AssemblyVersion'在构建有效的csproj时

本文关键字:有效 csproj 构建 AssemblyVersion | 更新日期: 2023-09-27 18:17:06

我有一个项目,它引用了其他一些项目。它们都是使用x86作为平台构建的。这在我的桌面上可以正常编译。

在我的远程VSO构建期间,我总是得到错误

MSB3174: 'AssemblyVersion'的值无效

当我编辑.csproj文件时,我看到它没有任何问题。我做错了什么?

VSO构建参数很简单:/t:发布/p: ApplicationVersion = $ (Build.BuildNumber)

我有其他项目使用$(Build.BuildNumber)没有问题

在VSO构建日志中看到的参数(为了清晰起见,被剪短了):

"C:'Program Files (x86)'MSBuild'12.0'bin'msbuild.exe" "[App_PATH].csproj" 
/nologo 
/nr:false 
/t:"Clean" 
/dl:CentralLogger,[*snip dll path] 
/t:Publish 
/p:ApplicationVersion=DEPLOY.[App_Name]_2016.11.09.16 
/p:platform="x86" 
/p:configuration="DV1" 
/p:_MSDeployUserAgent="VSTS[*snip]"
编辑:我试着从本地命令提示符运行MSBuild,我得到同样的行为。VSTS或它的任何设置信息都不应该受到指责。

我只希望我知道如何在我的应用程序中查看以纠正它

AssemblyVersion'在构建有效的csproj时

问题就在这里:

/p:ApplicationVersion=DEPLOY.[App_Name]_2016.11.09.16 

版本格式不符合要求。请试试这个格式:1.2.3.4.

详细信息请参考MSBuild Error MSB3174和Version Constructor (String)。

评论

version参数只能包含major、minor、按此顺序构建和修改,并以句号分隔。至少有两个组成部分,最多四个。前两个组件被假定为主要和次要。未指定的值组件未定义。版本号的格式为遵循。可选组件用方括号('['和)表示"]"):主要版本。次要版本[.build[号码。所有已定义的组件必须是大于等于0的整数。例如,如果主用号码是6,次要号是2,构建号是1,修订如果数字是3,那么版本号应该是"6.2.1.3"