【问题标题】:use `dotnet build` outputs as `dotnet publish` inputs使用 `dotnet build` 输出作为 `dotnet publish` 输入
【发布时间】:2020-05-12 07:19:18
【问题描述】:

我使用dotnet build -o $somedir,如何创建后续dotnet publish 以使用$somedir 中的工件?

文档不足,包含 MSBuild 逻辑的 xml 文件简直是地狱,我什至想把头撞到桌子上,但没有帮助。

【问题讨论】:

  • 你知道你可以跳过dotnet build... 并运行dotnet publish -o $somedir 来获得你想要的,对吧?
  • 当然。一步完成这两件事是不可取的。
  • @justsomebody 你为什么要这样做?你想达到什么目标?

标签: .net-core


【解决方案1】:

您可以通过指定--no-build 选项并将MSBuild property OutDir 设置为构建结果所在的文件夹来实现。

这是添加了发布步骤的示例:

dotnet build -o $somedir
dotnet publish -p:OutDir=$somedir --no-build

【讨论】:

  • 谢谢,这似乎是正确的答案。附带问题:您是如何发现这是dotnet publish 的输入?您链接的文档不包含任何此类提示。 (事实上​​,我确实在此处询问之前阅读了该页面,并在看到OutDirOutputPath的描述时空手而归。
  • 是的,描述不是很清楚。我首先尝试了OutputPath,发现它在发布时仍然将netcoreapp3.1添加到路径中,并且出现路径不存在的错误。这对我来说很奇怪,所以我检查了是否还有其他东西并找到了OutDir 属性,它说这是项目或解决方案的最终输出位置。然后我设置了OutDir,它起作用了。
猜你喜欢
  • 2018-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-09
  • 2020-01-16
  • 1970-01-01
相关资源
最近更新 更多