【发布时间】:2020-10-29 01:53:51
【问题描述】:
在我的解决方案中,我有几个项目,它们在构建时打包了自己的 nuget 包。打包包时,我使用 PackageID 参数将自定义前缀添加到包名称(否则将是项目的名称)。
dotnet pack .\$(ProjectName).csproj --include-symbols --no-build -o C:\dev\Packages -p:PackageID=CustomPrefix.$(ProjectName)
效果很好。
现在,在我的 Azure Devop Pipeline 中,我使用 dotnet 任务来打包我的包,如下所示:
- task: DotNetCoreCLI@2
displayName: 'dotnet pack'
inputs:
command: 'pack'
packagesToPack: '${{parameters.solutionPath}}'
nobuild: true
includesymbols: true
versioningScheme: 'off'
现在显然这没有添加前缀,我不知道该怎么做,特别是因为在这里我将路径指向实际解决方案,而不是项目。它只是为解决方案中的所有项目打包包,没有任何自定义它的方法。关于我如何做到这一点的任何线索?
【问题讨论】:
-
你能把
packagesToPack设置为你的csproj,并使用buildProperties: 'PackageID=CustomPrefix.$(ProjectName)'吗? -
但解决方案中的项目不止一个。而 $(ProjectName) 在这里没有任何意义,只有在本地运行时才有意义。除非任务知道如何用解决方案中每个项目的名称替换它?
标签: .net-core nuget azure-pipelines nuget-package dotnet-cli