我正在尝试使用 msbuild 构建一个 csproj 项目,但是遇到了各种奇怪的问题,抱怨找不到 nuget.targets。
我使用 MSbuild 运行最简单的命令行构建:
Msbuild Project.csproj
这适用于我的普通 dev 文件夹,但在另一个文件夹位置,它会因以下错误而失败:
error MSB4019: The imported project "C:\BuildAgent\work\CableSense\.nuget\nuget.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
该路径 ( C:\BuildAgent\work\CableSense\.nuget\nuget.targets
) 实际上是错误的,并且在下班后缺少一个文件夹 (work\somefolder\cablesense),但我不知道为什么。更奇怪的是,如果我构建另一个项目作为解决方案的一部分,那么它就可以工作,它只是这个项目。
csproj 指定 nuget.targets 文件的位置,如下所示:
<Import Project="$(SolutionDir)\.nuget\nuget.targets" />
SolutionDir 的定义如下:
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
这与另一个有效的项目相同。有任何想法吗?