使用vs进行Nuget打包时的LicenseExpression填写示例参考

新版的nuget包 PackageLicense 这样写

最近编译类库项目的时候发现总是有个 licenseUrl 的警告,警告信息如下:

 warning NU5125: The 'licenseUrl' element will be deprecated. Consider using the 'license' element instead 

本文针对的是使用新版项目文件打包的方式,*.nuspec 官方文档详细,在此不多说。
新版的官方文档里基本没有提及,不过 Github 有个 samples 项目,可以参考。
新版项目文件的 nuget 包原来可以指定一个 PackageLicenseUrl 来指定这个包的 license, 现在不再支持了,现在有两种方式可以指定,一种是 LicenseExpression 一种是 LicenseFile

LicenseExpression

示例:

<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> <PackageLicenseExpression>MIT</PackageLicenseExpression> <!-- <PackageLicenseExpression>Apache-2.0</PackageLicenseExpression> --> </PropertyGroup> </Project> 

更多license列表可以参考:https://spdx.org/licenses/

LicenseFile

增加 license file,具体的 license 写在 license file 内,并配置打包,然后配置 PackageLicenseFile

<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFrameworks>netstandard2.0</TargetFrameworks> <PackageLicenseFile>License.txt</PackageLicenseFile> </PropertyGroup> <ItemGroup> <None Include="License.txt" Pack="true" Visible="false" PackagePath=""/> </ItemGroup> </Project> 

Reference



猜你喜欢

转载自www.cnblogs.com/jcsoft/p/12235269.html