NuGet 错误 NU1012
方案 1
平台版本不适用于一个或多个目标框架,即使它们已指定平台:net6.0-android。
问题
你已在项目文件中指定具有平台的目标框架,但平台版本不可用。
解决方案
- 如果要手动指定
TargetPlatformVersion
,请务必包含版本。 - 如果使用的是 .NET SDK,且 TargetFramework 属性包含
net6.0-android
,则 .NET SDK 应自动添加平台版本。 如果遇到此问题,请在 dotnet/sdk 上提出问题。
方案 2
某些依赖项组 TFM 缺少平台版本:net6.0-android
问题
为具有 android
等平台的框架创建包时,需指定正确的平台版本。
解决方案
在 nuspec 中指定平台版本。
示例: <group targetFramework="net6.0-android32.0">
如果使用的是打包目标,则会自动推断平台版本。
方案 3
包含在 TFM 下的某些已包含文件缺少平台版本:lib/net6.0-android/Foo.dll、build/net9.0-windows/Foo.props
问题
根据 NuGet 打包约定打包的某些文件存在缺少平台版本的框架部分。
解决方案
在 nuspec 或项目文件的包可扩展性目标中指定平台版本。
示例:lib/net6.0-android32.0/Foo.dll
、build/net9.0-windows10.0.19041/Foo.props