如何在NuGet包中为类库包含Xml Docs?
问题描述:
我正在为C#类库创建一个NuGet包,并且我想将生成的Xml文档包含在该库中。这是我的nuspec文件:如何在NuGet包中为类库包含Xml Docs?
<?xml version="1.0" encoding="utf-8"?>
<package>
<metadata>
<id>MyLibrary</id>
<version>1.0.0.0</version>
<authors>John Nelson</authors>
<language>en-US</language>
<description>A C# class library</description>
</metadata>
<files>
<file src="..\..\build\MyLibrary.dll" target="lib\Net40" />
<file src="..\..\build\MyLibrary.xml" target="lib\Net40" />
</files>
</package>
当我build the package with this command:
nuget pack MyLibrary.nuspec
它会产生一个错误。如果我删除该行:
<file src="..\..\build\MyLibrary.xml" target="lib\Net40" />
NuGet.exe成功创建nupkg。我甚至可以解压缩该包,并验证内容是否正确。我究竟做错了什么?如果xml文件进入不同的目标目录?
答
问题是我没有检查“生成Xml文档”我正在使用的构建配置。 nuspec是正确的。
+5
很高兴知道。我试图用GUI来创建一个包,它试图让我将XML文件移动到内容文件夹而不是lib。看起来不对,所以我想得到第二个意见。很高兴你有这个职位。 :-) – 2012-01-01 15:41:10
你用什么命令来构建包? – 2015-05-14 15:43:52
@ColonelPanic通过命令和文档链接更新了问题。 – 2015-05-15 14:26:04
谢谢约翰。我正在直接包装一个csproj'nuget pack library.csproj'(我没有nuspec),但修复的工作原理是一样的。 – 2015-05-15 14:34:15