자동화 된 빌드 중에 내 nuget 패키지가 프레임 워크에 종속적 일 필요는 없지만 추가되는 nuget 패키지가 HintPath를 잘못 추가하고 있음을 계속 발견합니다. 나는 패키지의 일부 파일을 정의한 내 nuspec 내NuGet 패키지가 잘못된 힌트 경로를 추가 함
:
그러나<files>
<file src="lib\xyz.dll" target="lib\xyz.dll" />
<file src="lib\xyz.xml" target="lib\xyz.xml" />
</files>
내 프로젝트/솔루션 패키지를 추가 할 때마다, 그것은 잘못 지정하는 힌트 경로를 추가합니다
<Reference Include="xyz, Version=11.0.0.0, Culture=neutral, PublicKeyToken=4a3c0a4c668b48b4">
<HintPath>..\packages\xyz.11.0.0.0\xyz.dll</HintPath>
<Private>True</Private>
</Reference>
이로 인해 자동 빌드 서버가 어셈블리를 찾지 못하고 빌드에 실패하게됩니다. 나는 수동으로 힌트 경로를 고칠 수는 있지만 오히려하지 않을 것이다.
이 게시물 (Failed to add NuGet package)을 살펴 보았지만 관련성이없는 것으로 나타났습니다. 이 게시물 (NuGet package install uses specific assembly version in csproj files)은 동일한 문제를 언급하는 것처럼 보였지만 답이 없습니다. 아무나 생각이 있니?
완벽 해, 내가 그것을 밖으로 시도하자 그리고 그게 승자가 될 것 같아 –
NuGet 패키지에 대상 파일을 넣을 수 있습니까? 아니면 소비 프로젝트에 넣을까요? –
빌드 디렉토리의 NuGet 패키지에 넣으십시오. 그런 다음 NuGet 패키지가 설치되면 프로젝트에 추가됩니다. Xamarin.Forms 및 Microsoft.Bcl.Build와 같은 사용자 지정 MSBuild 대상을 사용하는 기존 NuGet 패키지가 있습니다. 사람들을 잡는 유일한 길은 .targets 파일이 패키지 ID와 동일한 이름을 가져야한다는 것입니다. –