【问题标题】:No artifacts created even though build is successful即使构建成功,也没有创建工件
【发布时间】:2020-10-02 11:17:56
【问题描述】:

我有一个多项目解决方案,其中包括 WinForms 应用程序、ASP.Net WebApi2、ASP.NetCore 项目。目前我无法获得构建自托管代理的整个解决方案。所以我创建了一个新管道并使用 MSBuild 任务来构建 WebApi2 项目。我还更改了 Nuget 版本以匹配我本地机器上使用的版本,即 5.3.1。

这是构建任务的 yaml:

steps:
- task: MSBuild@1
  displayName: 'Build project $/path/myproject.csproj'
  inputs:
    solution: '$/path/myproject.csproj'
    platform: '$(BuildPlatform)'
    configuration: '$(BuildConfiguration)'
    msbuildArguments: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\"'
    logProjectEvents: true

构建成功,但没有创建任何内容。我收到警告:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(778,5):警告:未为项目设置 OutputPath 属性AboServer.API.csproj'。请检查以确保您为此项目指定了有效的配置和平台组合。配置='发布'平台='任何 CPU'。您可能会看到此消息,因为您正在尝试构建一个没有解决方案文件的项目,并且指定了该项目不存在的非默认配置或平台。

我需要在管道中设置什么来创建工件?

【问题讨论】:

    标签: visual-studio azure-devops


    【解决方案1】:

    您可以尝试使用AnyCpu 而不是any cpu 作为platform 参数吗?

    【讨论】:

    • 这确实有效。但我收到错误:使用 Azure Pipelines 构建时出现错误 MSB4044。我应该将 deployonbuild 参数设置为 false 吗?
    • 是的。让我们尝试一下,因为我假设您的目标是创建一个包而不是部署它。
    • @Ivan-MarkDebono 如果我的回答有帮助,你可以考虑支持一下吗?
    猜你喜欢
    • 1970-01-01
    • 2015-02-24
    • 2011-04-26
    • 2020-09-29
    • 2019-10-10
    • 1970-01-01
    • 2011-08-22
    • 1970-01-01
    相关资源
    最近更新 更多