VSTS 构建 - 替换令牌 'version' 没有价值

VSTS Build - The replacement token 'version' has no value

我已经在 Visual Studio Team Services(Visual Studio 在线)中设置了我的第一个构建定义。

它构建,所有测试都通过,然后它最终弹出这个错误:

Attempting to build package from 'EvoqPortaCoreDistrib.nuspec'. The replacement token 'version' has no value. Unexpected exit code 1 returned from tool NuGet.exe

这是在清除它在我的 nuspec 文件中发现的一些其他问题之后的结果。虽然很奇怪,但我已经使用这个 nuspec 将包从我的台式 PC 手动推送到其他地方托管的提要。不同之处在于我今天已经更新到 NuGet 3.3。

这么说没有汇编版?坦率地说,这是不可能的。

等一下。显然,当您提供自己的 .nuspec 文件时,VSO 构建变得愚蠢。

https://msdn.microsoft.com/en-us/Library/vs/alm/Build/steps/package/nuget-packager

The packager does not compile the .csproj files for packaging. Each project is packaged only if it has a .nuspec file checked in. The packager does not replace tokens in the .nuspec file (except the element, see Use build number to version package, below). You must supply values for elements such as and . The most common way to do this is to hardcode the values in the .nuspec file.

所以我会拿出我的 .nuspec 文件。