2011-05-05 112 views
6

我创建了一个nuget包。我在“内容”文件夹中放入了一些文件和文件夹,效果很好。所以我加入DLL的一个bin文件夹,并把这个在我的nuspec文件:NuGet包的DLL +内容文件=失败?

<files> 
    src="bin\*.dll" target="lib" /> 
    </files> 

DLL的精美放在参考,但内容不再被复制。

我该如何设法让他们工作?

@Edit

我知道有这样的:

<file src="content\Controllers\*.*" target="Controllers" /> 
<file src="content\Views\Account\*.*" target = "Views\Account" /> 
<file src="bin\*.dll" target="lib" /> 

包中包含的权利结构和文件,但这些文件不会被复制到我的项目。

这些文件位于文件夹结构中。当我将它们直接放到我的内容文件夹中时,它们被复制到我的项目的根目录中...

回答

12

当您在nuspec中定义文件段时,我们不再执行基于“自动”/“Convention”的包创建。我们看到它,因为你告诉我们要包括什么,所以我们不包括不在列表中的东西。只需将内容文件夹添加到该列表中即可使用。

编辑,包括从下面

的NuSpec文件“文件”回答者的评论评论部分告诉的NuGet哪里把文件包不SLN /凸出时,它解压。你想它这样写:

<file src="content\Controllers*.*" target="content\Controllers" /> 
<file src="content\Views\Account*.*" target = "content\Views\Account" /> 
<file src="bin*.dll" target="lib" /> 
+0

我试过,以及:<文件SRC =“内容\ *” TARGET =“\” />,但它不工作,除非我使用了错误的语法,可以那么告诉我使用什么语法? – Nealv 2011-05-06 08:38:00

+6

NuSpec文件的“文件”部分告诉NuGet何时将文件放入软件包,而不是在sln/proj中解压缩文件。你想要这样吧: 2011-05-06 14:47:55

+3

所以“content”文件夹的意思是“我的项目的根目录”?看起来很奇怪......并且基本上没有记录。这个页面提到了内容文件夹,但并没有解释为什么它是特殊的:http://nuget.codeplex.com/wikipage?title=File%20Element%20Specification – 2013-08-18 22:38:36