dotnet\sdk\3.0.100\NuGet.targets(123,5): error : Ambiguous project name

dotnet\sdk\3.0.100\NuGet.targets(123,5): error : Ambiguous project name

我目前正在尝试构建一个 api 和一个 azure webjob 作为独立的 .net core 3.0 应用程序,但在构建过程中,无论我尝试什么配置,我都会收到以下错误。

C:\hostedtoolcache\windows\dotnet\sdk.0.100\NuGet.targets(123,5):错误:项目名称不明确 'Grey-O-Tron'。 [D:\a\s\Grey-O-Tron.sln]

这是当前的构建设置

pool:
  name: Azure Pipelines
variables:
  build.gittag: '6.6.1'
  build.number: '17'
  build.gitversion: '6.6.1+17'

steps:
- task: NuGetToolInstaller@1
  displayName: 'Use NuGet 5.3.0'
  inputs:
    versionSpec: 5.3.0

- task: UseDotNet@2
  displayName: 'Use .Net Core sdk 3.x'
  inputs:
    version: 3.x
    includePreviewVersions: true

- task: WouterVS.set-git-version-task.custom-build-release-task.Set git version@1
  displayName: 'Set Build''s Git Version'

- task: NuGetCommand@2
  displayName: 'NuGet restore'

- task: bleddynrichards.Assembly-Info-Task.Assembly-Info-NetCore.Assembly-Info-NetCore@2
  displayName: 'Set Assembly Manifest Data'
  inputs:
    InsertAttributes: true
    FileEncoding: 'utf-8'
    PackageId: 'Grey-O-Tron'
    Authors: 'Wouter Van Speybroeck'
    Company: woutervs
    Product: 'Grey-O-Tron'
    Copyright: 'Wouter Van Speybroeck'
    PackageProjectUrl: greyotron.eu
    RepositoryUrl: 'https://github.com/woutervs/Grey-O-Tron'
    VersionNumber: '$(build.gittag).$(build.number)'
    FileVersionNumber: '$(build.gittag).$(build.number)'
    InformationalVersion: '$(build.gitversion)'
    PackageVersion: '$(build.gitversion)'

- task: VSBuild@1
  displayName: 'Build solution **\*.sln'
  inputs:
    platform: x86
    configuration: release
  enabled: false

- task: DotNetCoreCLI@2
  displayName: 'dotnet build'
  inputs:
    arguments: '-c release -r win-x86'

- task: DotNetCoreCLI@2
  displayName: 'publish api'
  inputs:
    command: publish
    publishWebProjects: false
    projects: '**/*Api.csproj'
    arguments: '--no-build -o $(build.artifactstagingdirectory) -c release -r win-x86 --self-contained true'
    zipAfterPublish: false
    modifyOutputPath: false

- task: DotNetCoreCLI@2
  displayName: 'publish bot'
  inputs:
    command: publish
    publishWebProjects: false
    projects: '**/Grey-O-Tron.csproj'
    arguments: '--no-build -o $(build.artifactstagingdirectory)\app_data\Jobs\Continuous\Grey-O-Tron -c release -r win-x86 --self-contained true'
    zipAfterPublish: false
    modifyOutputPath: false

- task: PublishBuildArtifacts@1
  displayName: 'Publish Artifact: drop'

pool:
  name: Azure Pipelines
variables:
  build.gittag: '6.6.1'
  build.number: '17'
  build.gitversion: '6.6.1+17'

steps:
- task: NuGetToolInstaller@1
  displayName: 'Use NuGet 5.3.0'
  inputs:
    versionSpec: 5.3.0

- task: UseDotNet@2
  displayName: 'Use .Net Core sdk 3.x'
  inputs:
    version: 3.x
    includePreviewVersions: true

- task: WouterVS.set-git-version-task.custom-build-release-task.Set git version@1
  displayName: 'Set Build''s Git Version'

- task: NuGetCommand@2
  displayName: 'NuGet restore'

- task: bleddynrichards.Assembly-Info-Task.Assembly-Info-NetCore.Assembly-Info-NetCore@2
  displayName: 'Set Assembly Manifest Data'
  inputs:
    InsertAttributes: true
    FileEncoding: 'utf-8'
    PackageId: 'Grey-O-Tron'
    Authors: 'Wouter Van Speybroeck'
    Company: woutervs
    Product: 'Grey-O-Tron'
    Copyright: 'Wouter Van Speybroeck'
    PackageProjectUrl: greyotron.eu
    RepositoryUrl: 'https://github.com/woutervs/Grey-O-Tron'
    VersionNumber: '$(build.gittag).$(build.number)'
    FileVersionNumber: '$(build.gittag).$(build.number)'
    InformationalVersion: '$(build.gitversion)'
    PackageVersion: '$(build.gitversion)'

- task: VSBuild@1
  displayName: 'Build solution **\*.sln'
  inputs:
    platform: x86
    configuration: release
  enabled: false

- task: DotNetCoreCLI@2
  displayName: 'dotnet build'
  inputs:
    arguments: '-c release -r win-x86'

- task: DotNetCoreCLI@2
  displayName: 'publish api'
  inputs:
    command: publish
    publishWebProjects: false
    projects: '**/*Api.csproj'
    arguments: '--no-build -o $(build.artifactstagingdirectory) -c release -r win-x86 --self-contained true'
    zipAfterPublish: false
    modifyOutputPath: false

- task: DotNetCoreCLI@2
  displayName: 'publish bot'
  inputs:
    command: publish
    publishWebProjects: false
    projects: '**/Grey-O-Tron.csproj'
    arguments: '--no-build -o $(build.artifactstagingdirectory)\app_data\Jobs\Continuous\Grey-O-Tron -c release -r win-x86 --self-contained true'
    zipAfterPublish: false
    modifyOutputPath: false

- task: PublishBuildArtifacts@1
  displayName: 'Publish Artifact: drop'

回购可以在以下位置找到: https://github.com/woutervs/Grey-O-Tron

似乎任务 设置程序集清单数据 将您的项目的项目 ID 设置为相同的值 "Grey-O-Tron"。对于 csproj,通常项目 ID 应该是唯一的或为空。

您可能需要省略此任务的输入 PackageId。我在yml下面测试,没有PackageId

构建成功
- task: bleddynrichards.Assembly-Info-Task.Assembly-Info-NetCore.Assembly-Info-NetCore@2
  displayName: 'Set Assembly Manifest Data'
  inputs:
    InsertAttributes: true
    FileEncoding: 'utf-8'

    Authors: 'Wouter Van Speybroeck'
    Company: woutervs
    Product: 'Grey-O-Tron'
    Copyright: 'Wouter Van Speybroeck'
    PackageProjectUrl: greyotron.eu
    RepositoryUrl: 'https://github.com/woutervs/Grey-O-Tron'
    VersionNumber: '$(build.gittag).$(build.number)'
    FileVersionNumber: '$(build.gittag).$(build.number)'
    InformationalVersion: '$(build.gitversion)'
    PackageVersion: '$(build.gitversion)'