다음을 통해 공유


프로젝트 형식 식별

NuGet은 모든 .NET 프로젝트에서 작동합니다. 그러나 프로젝트 형식(SDK 스타일 또는 비 SDK 스타일)은 NuGet 패키지를 소비 및 만드는 데 사용해야 하는 일부 도구 및 메서드를 결정합니다. Sdk 스타일 프로젝트는 SDK 특성을 사용합니다. NuGet 패키지를 소비 및 만드는 데 사용하는 메서드 및 도구는 프로젝트 형식에 따라 달라지므로 프로젝트 형식을 식별하는 것이 중요합니다. 비 SDK 스타일 프로젝트의 경우에는 이러한 메서드 및 도구가 프로젝트를 PackageReference 형식으로 마이그레이션했는지 여부에 따라서도 달라집니다.

프로젝트가 SDK 스타일인지 여부는 프로젝트를 만드는 데 사용되는 메서드에 따라 달라집니다. 다음 표에서는 Visual Studio 2017 이상 버전을 사용하여 프로젝트를 만들 때 프로젝트의 기본 프로젝트 형식 및 관련 CLI 도구를 보여 줍니다.

프로젝트 기본 프로젝트 형식 CLI 도구 주의
.NET Standard SDK 스타일 dotnet SDK Visual Studio 2017 이전 버전으로 만든 프로젝트는 SDK 스타일이 아닙니다. nuget.exe CLI를 사용합니다.
.NET Core SDK 스타일 dotnet SDK Visual Studio 2017 이전 버전으로 만든 프로젝트는 SDK 스타일이 아닙니다. nuget.exe CLI를 사용합니다.
.NET Framework 비 SDK 스타일 nuget.exe CLI 다른 메서드를 사용하여 만든 .NET Framework 프로젝트는 SDK 스타일 프로젝트일 수 있습니다. 이러한 경우 dotnet SDK를 대신 사용합니다.
마이그레이션된 .NET 프로젝트 비 SDK 스타일 패키지를 만들려면 msbuild -t:pack을 사용하여 패키지를 만듭니다. 패키지를 만들려면 msbuild -t:pack이 권장됩니다. 그렇지 않으면 dotnet SDK사용합니다. 마이그레이션된 프로젝트는 SDK 스타일 프로젝트가 아닙니다.

프로젝트 형식 확인

프로젝트가 SDK 스타일 형식인지 확실하지 않은 경우 프로젝트 파일의 <Project> 요소에서 SDK 특성을 찾습니다(C#의 경우 *.csproj 파일). 이 특성이 있으면 프로젝트가 SDK 스타일 프로젝트입니다.

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <Authors>authorname</Authors>
    <PackageId>mypackageid</PackageId>
    <Company>mycompanyname</Company>
  </PropertyGroup>

</Project>

Visual Studio에서 프로젝트 형식 확인

Visual Studio에서 작업하는 경우 다음 방법 중 하나를 사용하여 프로젝트 형식을 빠르게 확인할 수 있습니다.

  • 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 myprojectname.csproj 편집을 선택합니다.

    이 옵션은 SDK 스타일 특성을 사용하는 프로젝트의 경우 Visual Studio 2017부터만 사용할 수 있습니다. 그렇지 않으면 다른 메서드를 사용합니다.

    Edit the project file

    Sdk 스타일 프로젝트는 프로젝트 파일에 SDK 특성을 표시합니다.

  • 프로젝트 메뉴에서 프로젝트 언로드를 선택하거나 프로젝트를 마우스 오른쪽 단추로 클릭하고 프로젝트 언로드를 선택합니다.

    이 프로젝트의 경우 프로젝트 파일에 SDK 특성이 포함되지 않습니다. SDK 스타일 프로젝트가 아닙니다.

    Unload the project

    그런 다음, 언로드된 프로젝트를 마우스 오른쪽 단추로 클릭하고 myprojectname.csproj 편집을 선택합니다.

참고 항목