Nuget下载包到不正确的文件夹- Bamboo构建服务器



我目前正在尝试创建一个构建计划在竹ASP。. NET MVC项目。我已经将构建计划设置为调用nuget.exe来获取构建所需的包。但是,Nuget还原操作会将Nuget文件放入不同于指定的目录中,从而导致构建问题。

下面是我的包中的两个Nuget包的摘录。导致问题的配置文件

<package id="Owin" version="1.0.0" targetFramework="net46" userInstalled="true" />
<package id="Unity" version="3.5.1404" targetFramework="net46" userInstalled="true" />

恢复操作正常工作,但是包被下载到不正确的目录名。例如,Owin包下载到packagesOwin.1.0时,应该下载到packagesOwin.1.0.0。unity包下载到packagesUnity.3.5.1404.0

应该注意的是,这两行在包装中的位置是一样的。配置文件(即Unity直接跟随Owin包),所以我不认为丢失.0的目录直接在获得0.1的包定义之前是巧合。

Bamboo中的命令只是使用以下命令参数调用Nuget.exe文件:restore "${bamboo.build.working.directory}checkoutpathtoSolution.sln" -ConfigFile "${bamboo.tools.directory}nugetnuget.config"

编辑:通过下载nuget命令行实用程序并从命令行运行以下命令,可以在完全不同的系统上重现此行为:nuget restore "../path/to/solution.sln" -ConfigFile "nuget.config"

所以,由于某种原因,Nuget正在下载Owin.1.0.nupkgUnity.3.5.1404.0.nupkg文件,这就是不正确的目录名的来源。

nuget restore命令输出:

Installing 'Owin 1.0'.
Installing 'Unity 3.5.1404.0'.
Successfully installed 'Owin 1.0'.
Successfully installed 'Unity 3.5.1404.0'.

因此,虽然这远远不是理想的解决方案,但我想我将不得不创建一个构建步骤来重命名错误的目录名称。

最新更新