我有一个msbuild脚本:Msi.msbuild导入一个Variables.msbuild项目:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="CreateInstaller">
<Import Project="$(RedistDir)\Framework\Variables.msbuild" />
<Project>
Msi.msbuild在另一个msbuild脚本中多次构建:BuildMsi.msbuild
<Target Name="CreateEnvironmentSpecificInstaller" DependsOnTargets="$(SpecificBuildSteps)">
<Message Text="Write installer to $(OutputDir)" />
<MSBuild Projects="$(RedistDir)\Framework\Msi.msbuild" Targets="CreateBatchScripts" StopOnFirstFailure="true" Properties="Configuration=$(Configuration);" RebaseOutputs="true" />
</Target>
每次更改Variables.msbuild的内容时,都会多次调用目标CreateEnvironmentSpecificInstaller。
但我发现只有变量中的属性的第一个值用于所有运行时间,似乎它不再导入而不是第一个。
请告诉我如何强制重新导入变量?
答案 0 :(得分:0)
感谢wkl的答案,基于该帖子中的想法,我尝试重命名Variables文件并导入这些文件,以防止缓存。