Joe*_*Fan 5 msbuild visual-studio
由于这个问题似乎令人困惑/不知所措,所以我将用我自己的部分形成的想法重新表述它。
我是否可以以某种方式设置一个批处理文件或在构建整个解决方案后运行的文件,并且该批处理文件将调用msbuild在某个项目中构建特定目标?为了让它工作,我必须以某种方式强制msbuild构建目标,而不考虑它是否认为它是“最新的”,因为这是我遇到的核心问题。
由于您正在专门处理构建,因此您可能希望将批处理文件替换为 MSBuild 文件。例如:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<SolutionsToBuild Include="MySolution.sln"/>
<Projects Include="Proj1.csproj"/>
<Projects Include="Proj2.csproj"/>
<Projects Include="Proj3.csproj"/>
</ItemGroup>
<Target Name="BuildAll">
<!-- Just executes the DefaultTargets (Build) -->
<MSBuild Projects="@(SolutionsToBuild)"/>
<!-- Call Rebuild if you think its not building correctly -->
<MSBuild Projects="@(Projects)"
Targets="Rebuild"/>
</Target>
</Project>
Run Code Online (Sandbox Code Playgroud)
然后您只需使用以下命令对此文件调用 msbuild.exe:
msbuild.exe Build.proj /t:BuildAll
Run Code Online (Sandbox Code Playgroud)
由于您说过要在构建解决方案后构建特定项目,只需将这些项目放入如图所示的项目项组中,并在构建解决方案后使用 MSBuild 任务来构建它们。我已经指定了重建目标以确保您获得干净的构建。
| 归档时间: |
|
| 查看次数: |
6131 次 |
| 最近记录: |