MSBuild-我可以编译子目录中的所有解决方案吗?
在MSBuild中是否有方法编译文件夹、子文件夹和子文件夹中的所有解决方案。。。在指定的父项下MSBuild-我可以编译子目录中的所有解决方案吗?,msbuild,Msbuild,在MSBuild中是否有方法编译文件夹、子文件夹和子文件夹中的所有解决方案。。。在指定的父项下 我们的库附带了一系列示例程序。我想添加到构建过程中,我们知道它们都会编译。您可以为还原和构建操作创建自己的目标。例如: <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" InitialTargets="EntryRestore" DefaultTargets="Entr
我们的库附带了一系列示例程序。我想添加到构建过程中,我们知道它们都会编译。您可以为
还原和构建操作创建自己的目标。例如:
<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>
MSBuild
任务启动执行指定目标的MSBuild
。在我们的cas中,它是restore
和build
。It任务使用了“批处理”
,允许通过元数据迭代项
| | |迭代解决方案文件并将它们逐个传递给MSBuild(API或命令行)。这是您想要的吗?或者?请将还原目标命名为restore
,并使用/restore
命令行开关而不是InitialTargets
来启动还原。这是确保在还原+生成操作期间正确清除缓存的唯一方法。@MartinUllrich,您能更详细地解释一下吗?
<ItemGroup>
<SolutionFile Include="$(MyDir)/**/*.sln"/>
</ItemGroup>
&"D:\Visual Studio\MSBuild\15.0\Bin\msbuild.exe" .\Make.targets