(如果我在这里混淆了任何术语,请原谅 - 我是一名 Java 开发人员,不熟悉 .Net 和 C#。如果需要,请在此问题上添加/更正任何标签。)
我正在使用 MSBuild 脚本来构建我的项目。其中一项任务是编写程序集信息:
<Target Name="UpdateAssemblyInfo">
<Message Text="Updating assemblies to file version $(AssemblyVersion) ($(AssemblyFileVersion))" Importance="high"/>
<AssemblyInfo CodeLanguage="CS"
OutputFile="SharedAssemblyInfo.cs"
AssemblyVersion="$(AssemblyVersion)"
AssemblyFileVersion="$(AssemblyFileVersion)"
AssemblyProduct="SVN revision $(BUILD_NUMBER)"/>
</Target>
这SharedAssemblyInfo.cs
从这里转换:
[assembly: System.Reflection.AssemblyVersion("0.0.0")]
对此:
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18063
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
[assembly: System.Reflection.AssemblyVersion("1.4.0")]
[assembly: System.Reflection.AssemblyFileVersion("1.4.0.85725")]
[assembly: System.Reflection.AssemblyProduct("SVN revision 85725")]
到目前为止,一切都很好。除了我在 TeamCity 的构建日志中看到以下消息:
CSC 警告 CS1607:程序集生成 -- 为“文件版本”指定的版本“1.4.0.85725”不是正常的“major.minor.build.revision”格式
当版本的格式似乎遵循警告消息中指定的格式时,为什么我会收到此警告?