我有一个这样的响应文件:
-p:Copyright="Copyright C KittenMittens $(Year)"
MSBuild 命令如下:
msbuild.exe solution.sln -p:Year=2024 @responsefile.rsp
但是程序集版权无论如何都会以 $(Year) 结束。将相同的字符串放入 .csproj 文件中,$(Year) 被正确替换。我尝试了不同的方法来替换响应文件中的变量,但现在我没有主意了。还有人知道如何做吗?
@jonathan-dodds 的评论:
-property 开关不会对提供的值执行属性扩展。将开关移至响应文件并不会改变这一点。
替代方案:
<Copyright>Copyright C $(CopyrightOwner) $(Year)</Copyright>
添加到项目文件中(由乔纳森提供)msbuild.exe -p:Copyright="Copyright ... $(Year)"