2011-05-05 84 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