【发布时间】:2014-08-21 11:42:17
【问题描述】:
我正在寻找以某种方式使用 MSBuild 进行构建的可能性,我可以将一个配置用于多个项目。
这是我要分享的配置:
<ItemGroup>
<MySourceFiles Include="$(TargetDir)\*.*"/>
</ItemGroup>
<Target Name="Prepare" BeforeTargets="BeforeBuild">
<Message Text="Preparing folders..." Importance="high" />
<MakeDir Directories="$(SolutionDir)Build\$(Configuration)" />
<MakeDir Directories="$(SolutionDir)Build\$(Configuration)\Plugins" />
<Message Text="Folders prepared..." Importance="high" />
</Target>
<Target Name="AfterBuild">
<Message Text="$(AssemblyName) - Copying output" Importance="high" />
<Copy SourceFiles="@(MySourceFiles)" DestinationFolder="$(SolutionDir)Build\$(Configuration)" SkipUnchangedFiles="false" />
<Message Text="$(AssemblyName) - Copying finished" Importance="high" />
</Target>
如您所见。它将简单地检查/创建 Build/Debug 文件夹并将所有已编译的文件复制到那里。我需要多个项目。
这可能在一些外部 xml 或 proj 文件中并加载配置并从那里加载吗?我想防止将来可能出现的更新问题。
感谢您的帮助
【问题讨论】:
-
只有
<Import Project="myProj.targets">在每个项目中,myProj.targets 包含显示的代码? - 虽然我认为你最好不使用 SolutionDir 而使用 ProjectDir 等,但并非所有项目都有解决方案 -
谢谢,这正是我需要的。如何将您的评论标记为答案?
-
你不能 - 我将其添加为实际答案然后你可以接受
标签: configuration msbuild external