VSTS dotnet Nuget Pack:不是有效的版本字符串

时间:2018-07-11 14:50:02

标签: .net-core azure-devops azure-pipelines

我正在尝试为VSTS中的.net-standard 2.0库创建一个预发布版本。我已按照以下步骤创建了构建

  1. dotnet恢复版本2
  2. dotnet构建版本2
  3. dotnet pack版本2
  4. nuget push版本2

当我将环境变量(PackageName)用作$(Build.BuildNumber)-beta作为Pack版本时。打包失败,错误为BuildName_2018.7.11.1-beta is not a valid version string。我以前曾将此环境变量用作.net-framework中成功安装的包版本。

2 个答案:

答案 0 :(得分:1)

这是因为字符串$(Build.BuildNumber)-beta不是环境变量。

您可以尝试创建一个变量$(packversion)并将字符串$(Build.BuildNumber)-beta设置为该变量的值,然后在$(packversion)任务中使用环境变量dotnet pack


更新:

似乎它只能识别以数字结尾的字符串作为版本字符串。

因此,只需尝试像这样Beta-$(Build.BuildNumber)一样添加“ beta ”作为前缀,然后检查是否可行。

enter image description here

答案 1 :(得分:0)

版本不符合Nuget软件包版本格式。它必须以如下数字开头:

  

1.0.1

     

6.11.1231

     

4.3.1-rc

     

2.2.44-beta1

因此,您需要删除内部版本号格式的字符串。有关详细信息,请参见此链接:Package versioning