我正在尝试从MSBuild中的文件中读取版本号:
<ItemGroup>
<VersionFile Include="Properties\VERSION" />
</ItemGroup>
<Target Name="BeforeBuild">
<ReadLinesFromFile File="@(VersionFile)">
<Output TaskParameter="Lines" ItemName="VersionNumber" />
</ReadLinesFromFile>
</Target>
Run Code Online (Sandbox Code Playgroud)
我只需要这个文件的第一行.如何将该值与另一个字符串连接起来WriteLinesToFile?这不起作用:
<WriteLinesToFile
File="$(AssemblyVersionFile)"
Lines="[assembly: AssemblyVersion("@(VersionNumber)")]" />
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
错误MSB4012:表达式"[assembly:AssemblyVersion("@(VersionNumber)")]"不能在此上下文中使用.项目列表不能与期望项目列表的其他字符串连接.使用分号分隔多个项目列表
我不是太熟悉的MSBuild,但改变Output的ReadLinesFromFile是一个属性,并使用$访问它在WriteLinesToFile似乎工作:
<Target Name="BeforeBuild">
<ReadLinesFromFile File="@(VersionFile)">
<Output TaskParameter="Lines" PropertyName="VersionNumber" />
</ReadLinesFromFile>
<WriteLinesToFile
File="output.txt"
Lines="[assembly: AssemblyVersion("$(VersionNumber)")]" />
</Target>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4467 次 |
| 最近记录: |