gpt4 book ai didi

c# - Azure Pipeline : dotnet publish fails - assets. json 没有 '.NETCoreApp,Version=v3.1/win-x64' 的目标

转载 作者:行者123 更新时间:2023-12-04 14:11:18 25 4
gpt4 key购买 nike

我有一个 .NetCore 3.1 命令行应用程序。在本地构建和发布时,使用下面的命令行完全可以正常工作

dotnetpublish-c dev -r win-x64 --self-contained true

在 Azure 管道中 - 在使用上述命令进行发布之前,我必须执行 dotnet Restore。在发布时,我必须根据 Microsoft 的建议 here 添加额外的参数 --no-restore因为我有私有(private) nuget feed。dotnetpublish-c dev -r win-x64 --self-contained true --no-restore

Most dotnet commands, including build, publish, and test include animplicit restore step. This will fail against authenticated feeds,even if you ran a successful dotnet restore in an earlier step,because the earlier step will have cleaned up the credentials it used.

To fix this issue, add the --no-restore flag to the Arguments textbox.

现在,管道的发布部分开始失败并出现错误 -

C:\Program Files\dotnet\sdk\3.1.401\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(241,5):错误NETSDK1047: Assets 文件'MyProject\obj\project.assets.json' 没有 '.NETCoreApp,Version=v3.1/win-x64' 的目标。确保恢复已运行并且您已将“netcoreapp3.1”包含在项目的 TargetFrameworks 中。您可能还需要在项目的 RuntimeIdentifiers 中包含“win-x64”。

我没有使用发布 xml,而是在命令行中指定如上所示的所有参数。我已经检查了 csproj 是否指定了目标框架

  <PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<Configurations>Debug;Release;dev;test;pre;prod</Configurations>
</PropertyGroup>

需要任何关于这里可能出现问题的指示吗?

谢谢

最佳答案

请添加错误消息中提到的 RuntimeIdentifier:

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<Configurations>Debug;Release;dev;test;pre;prod</Configurations>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
</PropertyGroup>

另请检查 PlatformTarget。

 <PlatformTarget>AnyCPU</PlatformTarget>

我猜本地计算机的操作系统与构建代理不同。

关于c# - Azure Pipeline : dotnet publish fails - assets. json 没有 '.NETCoreApp,Version=v3.1/win-x64' 的目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64025663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com