我在配置Azure DevOps Dotnet核心生成过程时遇到问题。

我有一个简单的dotnet核心项目,正在尝试在Azure DevOps环境中进行构建。

该项目位于我的存储库内的子文件夹中,但是我无法弄清楚如何指定管道如何找到我的csproj文件。 The MSDN documentation建议您可以指定它,但是没有示例,我的所有尝试都遇到错误。

使用标准dotnet CLI模板构建管道时,创建的YAML为:

# ASP.NET Core
# Build and test ASP.NET Core web applications targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.microsoft.com/vsts/pipelines/languages/dotnet-core

pool:
  vmImage: 'Ubuntu 16.04'

variables:
  buildConfiguration: 'Release'

steps:
- script: dotnet build --configuration $(buildConfiguration)
  displayName: 'dotnet build $(buildConfiguration)'


但这遇到了错误:

MSBUILD : error MSB1003: Specify a project or solution file.
The current working directory does not contain a project or solution file.


上面链接的文档建议使用基于“任务”的语法而不是脚本,并且我假设在文档中,输入内容的输入顺序与下面列出的示例相同。

最佳答案

如果使用script,请在build词后指定csproj文件:

- script: dotnet build myrepo/test/test.csproj --configuration $(buildConfiguration)


使用Azure DevOps Pipeline的最佳方法是使用生成管道的任务,在Dotnet Core yaml生成任务中,您在inputs部分中指定文件:

- task: DotNetCoreCLI@2
  inputs:
    command: 'build'
    projects: 'myrepo/test/test.csproj'

关于.net-core - 如何在Azure DevOps管道中指定解决方案文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52364661/

10-13 06:14