2017-07-14 67 views
1

簡單的問題。我有一個NuGet包項目。該項目引用其他類庫項目(它們不是NuGet包)。我希望我的NuGet包將它的引用DLL加載到安裝包的項目中。這是可能的,還是所有被引用的類庫都需要成爲NuGet包才能將它們指定爲依賴項?如何在NuGet包中繼承引用的程序集

TIA

+0

如果將引用的dll和主項目包含到一個nuget包中並設置'references',[請參閱程序集引用](https://docs.microsoft.com/en-us/nuget/),則可以這樣做。 schema/nuspec#explicit-assembly-references) –

+0

這個引用是否在bin中? – Nugs

+0

我發表回覆這個更清楚 –

回答

1

你可以添加你所引用的dll的文件nuspec,可以立即設置源文件路徑和目標路徑文件中的NuGet包內。接下來,您應該在nuspec中添加對這些文件的引用。它看起來像這樣(我刪除其他metadatas):

.nuspec

<?xml version="1.0" encoding="utf-8"?> 
<package> 
    <metadata> 
    ... 
    <references> 
     <reference file="First.dll" /> 
     <reference file="Second.dll" /> 
    </references> 
    </metadata> 
    <files> 
    <file src="SomePath\First.dll" target="lib\First.dll" /> 
    <file src="SomePath\Second.dll" target="lib\Second.dll" /> 
    </files> 
</package> 
+0

謝謝。這正是我需要的! – Nugs

1

當執行nuget pack命令,你可以指定選項IncludeReferencedProjects

從文檔:

指示內置包應該包括引用的項目無論是作爲相關性或作爲包裝的一部分。如果引用的項目具有與該項目名稱相同的對應.nuspec文件,則將該引用的項目添加爲依賴項。否則,所引用的項目將作爲包的一部分添加。