2011-03-05 2 views
64

C# 클래스 라이브러리 용 NuGet 패키지를 만들고 있는데, 생성 된 XML 문서를 라이브러리에 포함시키고 싶습니다.NuGet 패키지에 클래스 라이브러리 용 XML 문서를 어떻게 포함합니까?

<?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 

그것은 오류가 발생 이건 내 nuspec 파일입니다. 다음 줄을 제거하면 :

<file src="..\..\build\MyLibrary.xml" target="lib\Net40" /> 

NuGet.exe가 nupkg를 성공적으로 만듭니다. 패키지를 압축 해제하고 내용이 올바른지 확인할 수도 있습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? xml 파일을 다른 대상 디렉토리로 이동해야합니까?

+0

패키지를 만드는 데 사용하는 명령은 무엇입니까? –

+0

@ColonelPanic이 명령 및 docs 링크가있는 질문을 업데이트했습니다. –

+0

감사합니다. 나는 csproj를 직접''nuget pack library.csproj' (nuspec이 없다)로 패키징하고 있지만 수정 된 내용은 동일하게 작동한다. –

답변

64

문제는 내가 사용했던 빌드 구성에 대해 "Generate Xml Documentation"을 선택하지 않았기 때문입니다. 그 nuspec은 정확합니다.

enter image description here

+5

잘 알고 있습니다. GUI를 사용하여 패키지를 만드는 데 손을 대고 있었고 lib 파일 대신 XML 파일을 콘텐츠 폴더로 옮기려고했습니다. 좋지 않은 것 같아서, 나는 두 번째 의견을 갖고 싶었다. 다행이 게시물을했다. :-) –

관련 문제