You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VSTS构建定义中通过参数跳过解决方案中的单个项目

可行!实现方法如下

当然可以做到!在Azure DevOps Pipelines(原VSTS)里,完全能通过命令行参数精准控制只构建解决方案里的指定项目,跳过不需要的那一个。下面分两种常见场景给你具体操作步骤:

情况1:使用MSBuild(.NET Framework项目)

你可以通过MSBuild的/t(Target)参数直接指定要构建的项目,两种方式都很实用:

  • 指定项目名称:找到.sln文件中定义的项目名称(比如WebApp1),在构建任务的命令行参数里添加:
    /t:WebApp1;WebApp2 /p:Configuration=Release
    
    这里的WebApp1和WebApp2就是你要构建的两个项目,MSBuild会自动跳过第三个。
  • 指定项目文件路径:如果项目在子目录里,直接写相对路径更直观:
    /t:src/WebApp1/WebApp1.csproj;src/WebApp2/WebApp2.csproj /p:Configuration=Release
    

情况2:使用DotNet Build(.NET Core/.NET 5+项目)

针对这类项目,操作更简单直接:

  • 在构建任务的项目输入框中,填写你要构建的两个项目路径,用分号分隔即可:
    **/WebApp1.csproj;**/WebApp2.csproj
    
    DotNet Build会自动忽略未指定的项目,只构建你列出的内容。

进阶:用构建变量让配置更灵活

如果以后需要频繁调整要构建的项目,可以在构建定义里创建自定义变量(比如ProjectsToBuild),把要构建的项目名称/路径赋值给它,然后在任务参数里引用这个变量:

  • 比如MSBuild的命令行参数可以写成:
    /t:$(ProjectsToBuild) /p:Configuration=Release
    
    后续只需要修改变量值,不用改动任务配置,非常方便。

注意事项

  • 要确保项目名称/路径和解决方案里的实际内容完全匹配,避免因路径错误导致构建失败。
  • 如果目标项目依赖于被跳过的项目,构建会失败,所以要先确认项目间的依赖关系,必要时需要调整依赖或者同时构建依赖项。

内容的提问来源于stack exchange,提问作者Mani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:07:44