我正在尝试配置一个 GitHub 工作流来构建我的多目标 NuGet 包(与 Xamarin.Forms 一起使用)并将这个包推送到 GitHub 和 Nuget。我在这里讨论了这个问题,这一切似乎都归结为以下几点:
我无法dotnet pack
在我的工作流程中使用,它会导致以下错误:
C:\Users\user\.nuget\packages\msbuild.sdk.extras\2.1.2\Build\Workarounds.targets(27,5): error : If you are building projects that require targets from full MSBuild or MSBuildFrameworkToolsPath, you need to use desktop msbuild ('msbuild.exe') instead of 'dotnet build' or 'dotnet msbuild' [C:\path\to.csproj]
当我使用 MSBuild(在我的计算机上手动或通过工作流)时,只有 UWP 声明可用,并且适用于所有目标平台(Android、iOS、UWP)。
当我右键单击类库项目并单击Pack命令时,生成的包按预期工作。所有平台都可以调用特定于平台的声明。
问题:
简单,【右键csproj-file】→Pack 后面有什么命令?我想尝试手动运行这些命令来弄清楚发生了什么......
信息:
- 我的电脑上的 msbuild 版本:16.7.0.37604(位于
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin
) - GitHub CI 上的 msbuild 版本:16.7.0+b89cb5fde
- GitHub CI 上的 dotnet 版本:3.1.301