在nuget发布中打包静态文件
打包静态文件很简单,在
项目文件
.csproj
中加入
<ItemGroup>
节点即可
但是想要自定义输出目录和输出文件名就很麻烦了,
官方文档
里完全没有介绍类似的功能配置
在网上搜了一圈各种
不靠谱
的答案,花了一个早上各种尝试最终达到理想的效果
配置如下:
Project.ItemGroup.Content.Include
: 表示本地需要打包的文件
Project.ItemGroup.Content.Include.Pack=true
: 表示需要打包到nuget
Project.ItemGroup.Content.Include.PackagePath
: 表示需要打包到nuget包的什么位置
contentFiles\any\any\;content\
这2个部分不要改,表示nuget安装目录
<Project Sdk="Microsoft.NET.Sdk.Web">
<ItemGroup>
<Content Include="*.md">
<Pack>True</Pack>
<PackagePath>contentFiles\any\any\zijian666\any-extensions;content\zijian666\any-extensions</PackagePath>
</Content>
</ItemGroup>
</Project>
参考文章:
Distributing Content and Showing a ReadMe file in a .NET Core Nuget Package - Rick Strahl's Web Log (west-wind.com)
NuGet ContentFiles Demystified - The NuGet Blog (microsoft.com)