2.1 릴리스 노트에서 제안 된 솔루션은 기본적으로 작동하지 않습니다. 그들은 코드가 있다는 것을 언급하지 않았습니다.
internal string ResolveInstallPath()
{
if (!string.IsNullOrEmpty(this.OutputDirectory))
{
return this.OutputDirectory;
}
ISettings settings = this._configSettings;
...
}
작동하지 않습니다. 이 문제를 해결하려면 NuGet.targets 파일을 수정하고 'OutputDirectory'매개 변수를 제거해야합니다.
<RestoreCommand>$(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" $(RequireConsentSwitch)</RestoreCommand>
이제 NuGet.config의 어딘가에 'repositoryPath'설정을 추가하면 (설정 파일을 넣을 수있는 유효한 장소에 대한 설명은 릴리스 노트 참조) 모든 패키지를 단일 위치로 복원하지만 .... csproj는 여전히 상대 경로로 작성된 어셈블리에 대한 힌트를 포함합니다 ...
나는 여전히 PackageManager를 변경하는 대신 왜 어려운 일을했는지 이해하지 못하므로 PackagesDir에 상대적인 힌트 경로를 추가합니다. 그것이 로컬 (내 데스크탑)과 빌드 에이전트에서 다른 패키지 위치를 갖기 위해 수동으로 수행하는 방법 입니다.
<Reference Include="Autofac.Configuration, Version=2.6.3.862, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
<Private>True</Private>
<HintPath>$(PackagesDir)\Autofac.2.6.3.862\lib\NET40\Autofac.Configuration.dll</HintPath>
</Reference>