我有一个引用其他几个项目的项目。它们都是使用x86作为平台构建的。这在我的桌面上编译得很好。构建有效的csproj时,'AssemblyVersion'的值无效
在我的远程VSO构建我总是得到错误
MSB3174:无效值“的AssemblyVersion”
当我编辑.csproj
文件,我看没有错。我究竟做错了什么?
VSO建立参数是干脆: /吨:发布/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(通常在AssembliyInfo.cs中) - 也许使用不存在或构建服务器上不同的变量? – DaveShaw
您能向我们展示您认为没有问题的部分吗?你用这个命令行参数覆盖了这个问题吗?(http://stackoverflow.com/questions/40223153/how-do-i-pass-a-version-information-to-msbuild-within-visual-studio-团队服务)? –
构建之前有一个步骤来更新AssemblyInfo.cs文件中的AssemblyFileVersion,但是我a-验证它正在正确地完成它的工作,并且b-我没有它来运行构建,并得到相同的行为。 AssemblyVersion的默认值:1.0.0。0和AssemblyFileVersion:1.0.0.0 –