如何为.net core 3.1和.netstandard 2.0制作程序集



有人能告诉我什么是正确的方法吗?这是我的项目文件

<PropertyGroup> 
<TargetFramework>netstandard2.1</TargetFramework>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
</ItemGroup>

这是nuspec文件的一部分

<dependencies>
<group targetFramework=".NETStandard2.1">
<dependency id="Microsoft.CSharp" version="4.7.0" />
</group>
<group targetFramework=".NetCore,Version=3.1">
<dependency id="Microsoft.CSharp" version="4.7.0" />
</group>
</dependencies>
<packageTypes>
<packageType name="Dependency" />
</packageTypes>  
</metadata>
<files>
<file src="bin$configuration$***.*" exclude="***.pdb" target=".lib"/>
</files>

当使用Cake构建程序集时,我们将Win-x64指定为运行时。这是正确的吗?

生成的nupkg中的文件/文件夹结构是

lib
netcoreapp3.1
any
win
win-x64
netstandard2.0
win10-x64

工具:VS2019,NuGet v.4.0

然后,当我试图将其安装在.net核心3.1项目中时,我会遇到可怕的问题:

Error   NU1202  Package JDM.Common.Json 0.2.2 is not compatible with netcoreapp3.1 (.NETCoreApp,Version=v3.1). Package JDM.Common.Json 0.2.2 does not support any target frameworks. ... 

我必须承认,不能完成这项工作让我发疯了。

TIA-

无需为此创建nuspec文件。您可以使用多个TargetFrameworks并指定多个目标框架:

<PropertyGroup> 
<TargetFramework>netstandard2.1;netcoreapp3.1</TargetFramework>
</PropertyGroup>

然后可以使用dotnet pack创建.nupk文件

相关内容

  • 没有找到相关文章

最新更新