nuget開発者に問題を作成し、修正を提案しました。
次の変更を加えて、nuget.targetsファイルを変更します。
この<PropertyGroup Condition=" '$(OS)' == 'Windows_NT'">
要素を追加するには:
<SolutionLevelPackagesConfig>$([System.IO.Path]::Combine($(SolutionDir), ".nuget\packages.config"))</SolutionLevelPackagesConfig>
この<PropertyGroup>
要素を追加するには:
<RestoreSolutionLevelCommand>$(NuGetCommand) install "$(SolutionLevelPackagesConfig)" -source "$(PackageSources)" $(RequireConsentSwitch) -solutionDir "$(SolutionDir) "</RestoreSolutionLevelCommand>
<Target Name="RestorePackages" DependsOnTargets="CheckPrerequisites">
WinNTのRestoreCommandの前にこの要素を追加します。
<Exec Command="$(RestoreSolutionLevelCommand)"
LogStandardErrorAsError="true"
Condition="'$(OS)' == 'Windows_NT' And Exists('$(PackagesConfig)') And Exists('$(SolutionLevelPackagesConfig)')" />
これにより、msbuildはソリューションレベルのパッケージを復元しました。