精彩文章免费看

在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)

最后编辑于:2022-11-05 00:25