.net - AzureDevops & dotnet pack:##[错误]没有文件与搜索模式匹配
问题描述
我有一个项目,我想在 Azure DevOps CI 构建中将其转换为 NuGet 包。解决方案中的相关文件如下所示:
/
RandExp.sln
/RandExp
RandExp.fsproj
/Tests
Tests.fsproj
我有一个 azure-pipelines.yml 文件,如下所示:
trigger:
- ci
pool:
vmImage: "ubuntu-latest"
variables:
buildConfiguration: "Release"
steps:
- task: GitVersion@5
inputs:
runtime: 'core'
updateAssemblyInfo: true
- task: DotNetCoreCLI@2
displayName: "DotNet restore"
inputs:
command: 'restore'
- task: DotNetCoreCLI@2
displayName: "DotNet build $(buildConfiguration)"
inputs:
command: 'build'
arguments: '--configuration $(buildConfiguration) --no-restore'
- task: DotNetCoreCLI@2
displayName: "DotNet test ($(buildConfiguration))"
inputs:
command: test
arguments: '--configuration $(buildConfiguration)'
- task: DotNetCoreCLI@2
displayName: "DotNet pack"
inputs:
command: 'pack'
nobuild: true
versioningScheme: 'byBuildNumber'
- task: DotNetCoreCLI@2
displayName: "DotNet push"
inputs:
command: 'push'
packagesToPush: '$(Build.ArtifactStagingDirectory)/*.nupkg'
nuGetFeedType: 'external'
publishFeedCredentials: 'Public Nuget'
一切都运行良好,直到倒数第二个任务:DotNet pack
. 它错误[error]No files matched the search pattern
:
Starting: DotNet pack
==============================================================================
Task : .NET Core
Description : Build, test, package, or publish a dotnet application, or run a custom dotnet command
Version : 2.175.0
Author : Microsoft Corporation
Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/build/dotnet-core-cli
==============================================================================
##[error]No files matched the search pattern.
Info: Azure Pipelines hosted agents have been updated to contain .Net Core 3.x (3.1) SDK/Runtime along with 2.1. Unless you have locked down a SDK version for your project(s), 3.x SDK might be picked up which might have breaking behavior as compared to previous versions.
Some commonly encountered changes are:
If you're using `Publish` command with -o or --Output argument, you will see that the output folder is now being created at root directory rather than Project File's directory. To learn about more such changes and troubleshoot, refer here: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/dotnet-core-cli?view=azure-devops#troubleshooting
Finishing: DotNet pack
几个小时以来,我一直用这个把头撞在墙上;我已经尝试了我能想到的一切,但除了同样的错误之外,无法从这项任务中得到任何东西,现在已经放弃了。
值得一提的是,在我的机器上,我可以cd
进入我的解决方案的根目录并运行dotnet pack
它,它可以正常工作,生成我期望的 nupkg。
解决方案
根据文档,您缺少此任务所需的参数
#packagesToPack: '**/*.csproj' # Required when command == Pack
推荐阅读
- html - 如何在 React 中加载 HTML 文档
- sql-server - SQL Server 代理作业将无法完成,甚至没有指示作业开始,没有错误消息
- python - Setup.py 不包括 py 文件以外的其他文件
- asp.net - 将参数从 webform 传递到 VB.net 中的 webservice
- c# - 仅删除 1 页所需的验证
- selenium - Python selenium id号是动态的
- spring - Redis 或 memcached - 哪个最好
- pygame - 如何在 Pygame(make_surface)中删除背景颜色?
- linux - Curl/Scrapy 绕过 Cloudflare 503 错误重定向
- c# - 在仅运行一次的“foreach”循环中使用 LINQ