使用MSBuild调用设置AssemblyFileVersion?

时间:2009-12-07 11:04:39

标签: msbuild build-process automation versioning assemblyinfo

我们有一个基于批处理的构建过程,我们只使用MSBuild来编译来自visual studio的项目文件。我们还将wix集成到了构建过程中。要设置我们软件的版本,我们在main-build-script中指定一些环境变量,我们在构建过程中使用这些变量。 我的问题是,我必须在我的程序集信息中设置程序集的FileVersion(AssemblyFileVersion)。 有没有办法给MSBuild调用一个属性来设置?像这样(这不起作用):

%dotnetdir%msbuild.exe Viewer.csproj /property:Configuration=Release /property:Platform=AnyCPU /property:AssemblyFileVersion=%major%.%minor%.%build%

生成的程序集应具有fileversion %major%.%minor%.%build%。 在所有项目中设置AssemblyFileVersion设置对我来说很痛苦。而这样做的程序是违反我的哲学的(我不想用自动化流程改变我的来源)。应该通过build-script设置版本。没有必要在AssemblyInfo.cs

中设置AssemblyFileVersion

或者MSBuild是否有可能指定一个描述汇编信息的xml-configuration文件?

如果有任何建议会很棒。

问候,谢谢, 马丁

1 个答案:

答案 0 :(得分:7)

MSBuild Community Tasks项目中的VersionAssemblyInfo任务可能有所帮助。