gpt4 book ai didi

msbuild - 将 NuGet PackageRestore 与 msbuild 一起使用

转载 作者:行者123 更新时间:2023-12-01 22:51:29 26 4
gpt4 key购买 nike

我有一个简单的类库项目(带有 Class1 )并为解决方案启用了 NuGet 包还原。

导入 restorepackages任务到 .csproj 文件中。

我可以用

C:>msbuild myproj.csproj /t:compile

我可以在添加包之前成功调用 restorepackages 任务
C:>msbuild myproj.csproj /t:restorepackages

但是,添加任何包都会导致 restorepackages 任务失败并出现错误 3。

似乎使用错误的工作目录调用了 NuGet 任务,您实际上可以通过删除 NuGet.targets 文件中的 workingdir 属性来修复该行为,该文件已添加到解决方案中。

像这样编辑任务:
   <Exec Command="$(RestoreCommand)"
LogStandardErrorAsError="true"
Condition="Exists('$(PackagesConfig)')"
WorkingDirectory="$(NuGetToolsPath)" />

并删除工作目录:

<Exec Command="$(RestoreCommand)"
LogStandardErrorAsError="true"
Condition="Exists('$(PackagesConfig)')"
/>


它似乎在命令行 msbuild 和 VS2010 中都按预期工作。

有谁知道这种变化是否会破坏任何工具?

最佳答案

是否与问题“Package Restore's $(SolutionDir) goes too far”有关?

你检查注入(inject)的SolutionDir项目文件中的属性?可能是生成的相对路径不会指向实际的解决方案目录。

关于msbuild - 将 NuGet PackageRestore 与 msbuild 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9061188/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com