簡體   English   中英

為什么一個.net庫需要引用其他.net庫的依賴關系

[英]Why one .net library needs the reference of the dependency of other .net library

我面臨一個奇怪的問題。 我的解決方案中有多個.net標准類項目。 有一個名為Messaging( .csproj )的.net 標准2.0類庫項目,該項目使用ActiveMQ來推送和讀取其中的數據。 該項目參考Apache.NMS庫。 現在,我有另一個名為Core.csproj )的項目,它引用了Messaging項目。 在Core項目的Messaging項目內的類的構造函數調用期間,我收到系統找不到Apache.NMS dll的錯誤。 如果在Core項目中添加此引用,則一切正常,但我真的不明白為什么會這樣。 使用純.net框架,我從來沒有遇到過這個問題。 使用自己的參考文獻將項目分開,並獨立工作。 有人可以幫忙嗎? 我已經從nuget添加了所有引用

經過大量研究,我找到了解決此問題的方法。 發生的是在.NET Framework /標准項目的bin文件夾中,未復制引用項目的相關dll。

.NET Framework項目的解決方案:打開.csproj文件,並在第一個標記中添加以下行

<RestoreProjectStyle>PackageReference</RestoreProjectStyle>

.NET Standard / Core項目的解決方案:打開.csproj文件,並在第一個標記行下方添加

<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>

現在編譯項目,您將看到bin文件夾中存在所有必需的dll。 希望這可以幫助面臨相同問題的其他人。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM