Visual Studio 2019自定义生成工具求助:如何设置项目按指定顺序构建
Visual Studio 2019 自定义项目构建顺序本地实现方案
以下为VS2019原生支持的功能,无需额外安装第三方工具:
方案1:基于项目依赖项配置固定构建顺序
适合需要固定所有项目构建优先级的场景:
- 打开目标解决方案,右键点击解决方案根节点,选择「属性」
- 在属性页左侧导航栏展开「通用属性」,选择「项目依赖项」
- 顶部下拉框选中需要调整构建优先级的项目,在下方列表中勾选该项目构建前必须完成构建的前置项目
- 切换到「项目生成顺序」标签页可预览完整构建顺序,确认无误后点击「确定」保存即可
该配置默认保存在本地.sln解决方案文件中,只要你不提交修改后的.sln文件,就不会影响其他协作者的环境。
方案2:自定义生成配置实现按需选择构建项目
适合需要灵活选择参与构建的项目、同时保留指定构建顺序的场景:
- 右键点击解决方案根节点,选择「配置管理器」
- 点击「活动解决方案配置」下拉框,选择「新建」
- 输入自定义配置名称(例如
LocalCustomBuild),选择从现有配置复制基础设置,勾选「创建新的项目配置」后点击确定 - 在配置列表中手动勾选需要参与本次构建的项目,不需要构建的项目直接取消勾选即可
- 配合方案1中设置的项目依赖项,即可实现仅构建指定项目、且按预设顺序执行的需求。
方案3:自定义MSBuild脚本实现复杂构建流程
适合需要更灵活的构建规则、需要频繁切换不同构建顺序的场景:
- 在解决方案根目录创建自定义MSBuild构建文件,命名为
LocalBuild.proj - 按照MSBuild语法定义要构建的项目和执行顺序,示例代码如下:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Target Name="CustomOrderedBuild"> <!-- 按你需要的顺序依次排列要构建的项目路径 --> <MSBuild Projects=".\FirstProject\FirstProject.csproj" Targets="Build" /> <MSBuild Projects=".\SecondProject\SecondProject.csproj" Targets="Build" /> <MSBuild Projects=".\ThirdProject\ThirdProject.csproj" Targets="Build" /> </Target> </Project>
- 你可以直接将该文件添加到VS解决方案中,右键点击文件选择「构建」即可按预设顺序执行构建;也可以通过VS自带的开发者命令提示执行命令
msbuild LocalBuild.proj /t:CustomOrderedBuild完成构建。
内容的提问来源于stack exchange,提问作者MB34
相关产品推荐
相关产品推荐

