2013-06-12 4 views
2

NuGet 패키지 LZ4.NET을 사용하는 솔루션이 있습니다.프로젝트 빌드 도중 콘텐츠의 dll이있는 Nuget 패키지가 복사되지 않습니다.

패키지는 대상 프로젝트 루트 디렉토리로 복사되는 dll을 내용 폴더에 저장합니다.

이것은 소스 제어 (Git)로 검사되었지만 프로젝트의 dll은 제외되었습니다.

현재 packages 폴더가 체크인되며, lib 디렉토리와 content 디렉토리 모두에 필요한 모든 dll 파일이 있습니다.

그러나 새 리포지토리를 복제 할 때 프로젝트를 빌드해도 내용이 프로젝트에 복사되지 않으므로 Visual Studio에서 dll이 누락되었다는 오류를 표시합니다 (프로젝트에 포함되었지만 소스 제어에서 제외됨).

빌드 할 때마다 어떻게 내용을 복사 할 수 있습니까? 아니면 DLL을 프로젝트에 체크인해야합니까?

내가 NuGet 패키지 복원 활성화

업데이트. 하지만 그것은 by design Nuget does not support restoring of content files 것 같습니다. 그렇다면 프로젝트의 DLL을 체크인해야하는 것 같습니다.

그러나 dll은 .Net Framework 버전 (예 : net35, net40, net45)으로 구성됩니다. DLL을 체크인하면 Nuget에 의존하기보다는 .NET Framework 버전에 "잠겨"있게됩니다. 패키지가 프로젝트에 설치되어

답변

1

, NuGet 사실

  1. 소스에서 패키지 파일을 다운로드, 이러한 작업을 수행;
  2. 기본적으로 $ (SolutionDir) \ packages 인 패키지 폴더에 패키지를 설치하십시오.
  3. 패키지가 복원 프로젝트 디렉토리 등

에 콘텐츠 파일을 DLL에 대한 참조를 추가 복사 구성 프로젝트에 패키지를 설치, 첫 번째 두 단계가 실행됩니다. 그래서 프로젝트 디렉터리에있는 DLL이 "복원"되지 않습니다.

유일한 해결책은 프로젝트 디렉토리의 DLL을 체크인하는 것입니다.

관련 문제