학습
모듈
새 .NET 프로젝트 만들기 및 패키지 종속성 사용 - Training
.NET 프로젝트를 만들고 프로젝트에서 패키지를 추가하고 패키지 종속성을 관리하는 방법을 알아봅니다. Visual Studio Code를 통해 C# 애플리케이션에 라이브러리 및 도구를 추가하려면 .NET Core CLI 및 NuGet 레지스트리를 사용합니다.
NuGet 1.4 릴리스 정보 | NuGet 1.6 릴리스 정보
NuGet 1.5는 2011년 8월 30일에 릴리스되었습니다.
새 ASP.NET MVC 3 프로젝트 템플릿을 만들 때 프로젝트에 포함된 jQuery 스크립트 라이브러리는 실제로 NuGet 패키지를 설치하여 배치됩니다.
ASP.NET MVC 3 프로젝트 템플릿에는 프로젝트 템플릿이 호출될 때 설치되는 NuGet 패키지 집합이 포함되어 있습니다. 프로젝트 템플릿에 NuGet 패키지를 포함하는 이 기능은 이제 모든 프로젝트 템플릿이 활용할 수 있는 NuGet의 기능입니다.
이 기능에 대한 자세한 내용은 기능 개발자가 작성한 이 블로그 게시물을 참조하세요.
패키지 내에서 참조할 어셈블리를 명시적으로 지정하는 데 사용되는 새 <references />
요소가 추가되었습니다.
예를 들어 다음을 추가하는 경우
<references>
<reference file="xunit.dll" />
<reference file="xunit.extensions.dll" />
</references>
그런 다음 폴더에 xunit.dll
xunit.extensions.dll
다른 어셈블리가 있더라도 폴더의 lib
적절한 프레임워크/프로필 하위 폴더에서만 참조됩니다.
이 요소를 생략하면 폴더의 모든 어셈블리를 참조하는 일반적인 동작이 lib
적용됩니다.
이 기능은 어떤 용도로 사용됩니까?
이 기능은 디자인 타임 전용 어셈블리를 지원합니다. 예를 들어 코드 계약을 사용하는 경우 계약 어셈블리는 Visual Studio에서 찾을 수 있도록 보강되는 런타임 어셈블리 옆에 있어야 하지만 계약 어셈블리는 프로젝트에서 실제로 참조하지 않아야 하며 폴더에 bin
복사해서는 안 됩니다.
마찬가지로, 이 기능은 도구 어셈블리가 런타임 어셈블리 옆에 있어야 하지만 프로젝트 참조에서 제외되어야 하는 XUnit과 같은 단위 테스트 프레임워크에 사용할 수 있습니다.
파일 내의 <file>
.nuspec
요소는 wild카드 사용하여 특정 파일 또는 파일 집합을 포함하는 데 사용할 수 있습니다. wild카드 사용하는 경우 포함된 파일의 특정 하위 집합을 제외할 방법이 없습니다. 예를 들어 특정 텍스트를 제외한 폴더 내의 모든 텍스트 파일을 원하는 경우를 가정해 보겠습니다.
<files>
<file src="*.txt" target="content\docs" exclude="admin.txt" />
</files>
세미콜론을 사용하여 여러 파일을 지정합니다.
<files>
<file src="*.txt" target="content\docs" exclude="admin.txt;log.txt" />
</files>
또는 야생 카드 사용하여 모든 백업 파일과 같은 파일 집합을 제외합니다.
<files>
<file src="tools\*.*" target="tools" exclude="*.bak" />
</files>
종속성이 있는 패키지를 제거할 때 NuGet은 패키지와 함께 패키지의 종속성을 제거할 수 있도록 프롬프트를 표시합니다.
이제 명령은 Get-Package
매개 변수를 -ProjectName
지원합니다. 따라서 명령
Get-Package –ProjectName A
는 프로젝트 A에 설치된 모든 패키지를 나열합니다.
인증이 필요한 프록시 뒤에서 NuGet을 사용하는 경우 NuGet은 이제 프록시 자격 증명을 묻는 메시지를 표시합니다. 자격 증명을 입력하면 NuGet이 원격 리포지토리 연결할 수 있습니다.
이제 NuGet은 기본 또는 NTLM 인증이 필요한 프라이빗 리포지토리에 대한 연결을 지원합니다.
다이제스트 인증에 대한 지원은 향후 릴리스에서 추가될 예정입니다.
패키지 목록 및 검색 속도를 더 빠르게 만들기 위해 nuget.org 갤러리에 몇 가지 성능이 향상되었습니다.
솔루션 수준 대화 상자에서 설치할 프로젝트를 묻는 메시지가 표시되면 선택한 패키지와 호환되는 프로젝트만 표시됩니다.
이제 NuGet 패키지에는 릴리스 정보에 대한 지원이 포함됩니다. 릴리스 정보는 패키지에 대한 업데이트 볼 때만 표시되므로 첫 번째 릴리스에 추가하는 것은 의미가 없습니다.
패키지에 릴리스 정보를 추가하려면 NuSpec 파일에서 새 <releaseNotes />
메타데이터 요소를 사용합니다.
이제 파일에서 .nuspec
빈 <files />
요소를 허용하므로 패키지에 파일을 포함하지 않도록 nuget.exe 알려줍니다.
NuGet 1.5에는 총 107개의 작업 항목이 고정되었습니다. 그 중 103개는 버그로 표시되었습니다.
NuGet 1.5에서 수정된 작업 항목의 전체 목록은 다음을 [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=All&type=All&priority=All&release=NuGet%201.5&assignedTo=All&component=All&sortField=Summary&sortDirection=Descending&page=0)
참조하세요.
[Issue 1273](http://nuget.codeplex.com/workitem/1273)
: 패키지를 사전순으로 정렬하고 추가 공백을 제거하여 버전 제어를 더 친숙하게 만들었습니다 packages.config
.[Issue 844](http://nuget.codeplex.com/workitem/844)
: 이제 버전 번호가 정규화되어 버전1.0.0
이 Install-Package 1.0
있는 패키지에서 작동합니다.[Issue 1060](http://nuget.codeplex.com/workitem/1060)
: nuget.exe 사용하여 패키지를 만들 때 플래그가 -Version
요소를 재정의 <version />
합니다.학습
모듈
새 .NET 프로젝트 만들기 및 패키지 종속성 사용 - Training
.NET 프로젝트를 만들고 프로젝트에서 패키지를 추가하고 패키지 종속성을 관리하는 방법을 알아봅니다. Visual Studio Code를 통해 C# 애플리케이션에 라이브러리 및 도구를 추가하려면 .NET Core CLI 및 NuGet 레지스트리를 사용합니다.