MSBuild 中有没有一种方法可以编译指定父级下的文件夹、子文件夹和子...中的所有解决方案?
我们的库附带了很多示例程序。我想添加到构建过程中,我们知道它们都会编译。
您可以创建自己的targets
for restore
and build
运营。例如:
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" InitialTargets="EntryRestore" DefaultTargets="EntryMSBuild">
<ItemGroup>
<SolutionFile Include="./**/*.sln"/>
</ItemGroup>
<Target Name="EntryRestore">
<Message Text="-----Entry-----" Importance="high"/>
<Message Text=" Restore " Importance="high"/>
<Message Text="-----Entry-----" Importance="high"/>
<MSBuild Projects="%(SolutionFile.Identity)" Targets="restore"/>
</Target>
<Target Name="EntryMSBuild">
<Message Text="-----Entry-----" Importance="high" />
<Message Text=" Build " Importance="high" />
<Message Text="-----Entry-----" Importance="high" />
<MSBuild Projects="%(SolutionFile.Identity)" Targets="build" />
</Target>
</Project>
Item SolutionFile
将包含所有路径.sln
位于当前目录及其子目录中的文件。您还可以在中定义路径CLI
并执行相对搜索。
<ItemGroup>
<SolutionFile Include="$(MyDir)/**/*.sln"/>
</ItemGroup>
MSBuild
任务启动MSBuild
用于执行指定的目标。在我们的情况下是restore
and build
。它的任务使用了'batching
' 允许通过元数据迭代项目。
&"D:\Visual Studio\MSBuild\15.0\Bin\msbuild.exe" .\Make.targets
MSBuild 目标 https://learn.microsoft.com/en-us/visualstudio/msbuild/msbuild-targets | 项目元素 https://learn.microsoft.com/en-us/visualstudio/msbuild/item-element-msbuild | 任务批处理中的项目元数据 https://learn.microsoft.com/en-us/visualstudio/msbuild/item-metadata-in-task-batching | MSBuild任务 https://learn.microsoft.com/en-us/visualstudio/msbuild/msbuild-task
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)