从Visual Studio Online Build Definition中的多个Web项目的解决方案构建一个Web项目

问题描述 投票:10回答:3

我正面临一个问题,我需要在Visual Studio Online中使用两个Web项目的解决方案构建一个Web项目。

  • 我还没有找到如何使用“Visual Studio Build”步骤构建一个项目。

如果使用“Visual Studio Build”步骤存在这样的方法,那将会很棒。

  • 我还尝试使用“MSBuild”步骤。不幸的是,在使用Nuget恢复软件包时遇到了问题。我收到错误:## [错误]找不到文件格式标头,## [错误]工具NuGet.exe返回意外退出代码1。运行后:Nuget.exe恢复Myproj.csproj。

总结:

如何在Visual Studio在线构建定义中从具有多个Web项目的解决方案中仅构建一个Web项目?

更新

这是我正在建造时的错误图像。此外,我正在使用“Visual Studio Build”步骤或“MSBuild”步骤。

enter image description here

我在vSO问题中找到了chrisrpatterson的评论:https://github.com/Microsoft/vso-agent-tasks/issues/571

他说:你不能对SLN文件以外的任何东西进行nuget恢复。您应该取消选中该vsbuild任务上的还原nuget包。

但是我需要这些包,而且我不想将我的包文件夹推送到我的仓库中。

那么,如何在“Visual Studio Build”步骤中从我的解决方案中恢复软件包并仅运行一个Web项目?

c# msbuild azure-devops azure-pipelines
3个回答
24
投票

您需要选择.proj文件,而不是选择.sln文件。

首先,单击“解决方案”字段旁边的省略号按钮。 enter image description here

然后选择要构建的.proj文件。例如,下面的屏幕截图显示构建定义被配置为构建ClassLibrary1项目,而不是整个解决方案(包含ClassLibrary1和ClassLibrary4项目)enter image description here


1
投票

您可以在构建定义中添加新的“Azure App Service Deploy”任务,并将“Package or folder field”设置为“$(build.artifactstagingdirectory)** \ YOURPROJECT.zip”


-4
投票

您可能希望仅使用要构建的Web项目创建解决方案。

在visual studio中,您可以创建一个新项目,然后在该对话框中选择“其他项目类型\解决方案”。

新解决方案可以紧挨着现有解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.