首页 文章

dotnet只发布VSTS解决方案中的一个项目

提问于
浏览
1

我们正在尝试使用.NET Core任务从VSTS中的Visual Studio解决方案构建一个项目 . 我们能够"dotnet build"那个项目 . 但是当我们尝试"dotnet publish"时,它会尝试从解决方案中发布所有项目 . 即使我们使用"dotnet custom",它也会尝试发布所有项目 .

有没有办法使用.NET Core任务只发布一个或多个已构建的项目?或者我们应该运行自定义命令行任务?

原因是我们有一个不会构建的项目,我们不需要/想要发布它 . 所以我们想 Build 和发布一个项目,而不是所有项目 .

Screenshot from VSTS

3 回答

  • 3

    可能迟到了派对,但为了控制要发布的项目,您可以取消链接“项目路径”变量(通过单击“链接设置”) . 这使得该字段可编辑,您可以指定所需的.csproj .

    Link settings dialog box

  • 0

    你可以使用 dotnet publish <Path to .csproj> . 这将仅构建和发布它所依赖的指定项目和项目 .

    要使用“发布”命令在“.Net Core”任务中指定项目,您必须取消选中“发布Web项目” .

  • 0

    这取决于每个项目的项目依赖性 .

    换句话说,有一些配置可以说“首先需要构建哪个项目,以便让目标项目成功构建” .

    如果您使用的是Visual Studio,请右键单击解决方案并单击'Properties' . 在此示例中,我的目标运行是 TestAngular.Web.Host ,为了构建该项目,首先需要构建 TestAngular.Web.Core .
    Project-Dependencies

    如果您使用不同的IDE,只需找到您的目录,在我的情况下,它将是 src\TestAngular.Web.Host 并修改 TestAngular.Web.Host.csproj 文件

    <Project Sdk="Microsoft.NET.Sdk.Web">
    ...
    <ItemGroup>
        <ProjectReference Include="..\TestAngular.Web.Core\TestAngular.Web.Core.csproj" />
      </ItemGroup>
    ...
    </Project Sdk="Microsoft.NET.Sdk.Web">
    

    按照相同的语法添加或删除不需要的项目

相关问题