1. 程式人生 > >程式集引用版本衝突問題的解決辦法:合併依賴項

程式集引用版本衝突問題的解決辦法:合併依賴項

最近在 做 MailChimp 與網站功能 整合時,發現 MailChimp 2API 中的 MailChimp.dll  中的依賴項 SerivceStack.Text.dll (版本為3.9.71.0)與我們WebSite 中的 ServiceStack.Text.dll (版本為4.0.0.0)的版本相沖突,當我們 寫了  MailChimpManager mc = new MailChimpManager(ApiKey); 時 提示 無法載入 SerivceStack.Text.dll (版本為3.9.71.0)的程式集異常。

我們通過使用 ILMerge 工具把 MailChimp.dll 和 ServiceStack.Text.dll (版本為4.0.0.0)這兩個程式集 合併為 一個 程式集然後進行引用。

命令如下:

C:\Program Files (x86)\Microsoft\ILMerge>ILMerge.exe /target:library /targetplat
form:v4 /out:"D:\MailChimp4.dll" "D:\MailChimp.dll" "D:\ServiceStack.Text.dll" /
wildcards /log:"D:\AandB4.log"

1、先下載最新的 ILMerge 工具安裝包:

ILMerge是合併.net的assembly的工具,最新版的支援.net 4.0的ILmerge下載:

ILMerge用法示例如下:

ILMerge.exe /target:library /targetplatform:v4 /out:"E:\Projects\ILMergeTest\A\Ref\AandB4.dll" "E:\Projects\ILMergeTest\A\A\bin\Debug\*.dll" /wildcards /log:"E:\Projects\ILMergeTest\A\Ref\AandB4.log"

引數說明:

/target:library  =》表示生成目標為dll

/targetplatform:v4  =》 編譯平臺為.net4.0

/out:"E:\Projects\ILMergeTest\A\Ref\AandB4.dll"  =》合併後輸出檔案路徑

"E:\Projects\ILMergeTest\A\A\bin\Debug\*.dll" /wildcards =》合併的dll,因為此處使用了萬用字元,因此需要 .wildcards

/log:"E:\Projects\ILMergeTest\A\Ref\AandB4.log" =》輸出合併日誌

2、相關參考連結幫助:

相關推薦

程式引用版本衝突問題的解決辦法合併依賴

最近在 做 MailChimp 與網站功能 整合時,發現 MailChimp 2API 中的 MailChimp.dll  中的依賴項 SerivceStack.Text.dll (版本為3.9.71.0)與我們WebSite 中的 ServiceStack.Text.dl

Asp.net中強簽名dll:引用程式沒有強名稱解決辦法

本文呢,意在和大家共同學習一下如何對自己的Dll檔案實現強簽名,在一定程度上防止別人反編譯和破解,具體為專案新增強名稱方法如下三步走: 1.右鍵單擊專案,開啟屬性視窗; 2.在屬性窗口裡選擇《簽名》標籤,選中為程式集簽名的選項,在下拉列表裡選擇新建,如下圖所示:  

關於未能載入檔案或程式“ICSharpCode.SharpZipLib”或它的某一個依賴異常的解決方案

問題:    今天專案遷移忽然又個ICSharpCode.SharpZipLib.dll 程式包丟失了,於是我在網上下載一個這樣的包,結果程式執行就提示:未能載入檔案或程式集“ICSharpCode.SharpZipLib”或它的某一個依賴項異常然後就是一堆的錯誤異常資訊。這種原因要麼就是 dll版本不匹配

Call requires API level 11 (current min is 8): new android.app.Fragment API版本衝突解決辦法

        我當前的應用程式支援的Android最小本號是8,而我需要使用Fragment這個控制元件,Fragment是API 11之後才有的,所以系統提示我: Call requires API level 11 (current min is 8): new an

IIS7出現未能載入檔案或程式“XXX.XXX”或它的某一個依賴。試圖載入格式不正確的程式解決方法

問題:本地web專案執行正常,在本地IIS上面釋出依舊執行正常,釋出到伺服器上的IIS上面出現此錯誤。 解決方法: 將應用程式 生成為  目標平臺:Any CPU; 測試環境是 筆記本 win7 64

未能載入檔案或程式,PublicKeyToken=“**********”,或它的某一個依賴。強名稱驗證失敗。

就是這種錯誤。這種錯誤怎麼辦? 以下步驟: (以上圖dll為例) 1、看專案的Debug資料夾下是否有以下三個檔案 2、看專案的.csproj檔案下引用的報錯dll的publickeytoken和版本是否正確 [可能需要使用sn.exe 來檢視 dll的publickey值],我也不知道為什麼v

分析器錯誤訊息: 未能載入檔案或程式“AjaxPro.2”或它的某一個依賴。系統找不到指定的檔案。

VS報錯:分析器錯誤訊息: 未能載入檔案或程式集“AjaxPro.2”或它的某一個依賴項。系統找不到指定的檔案。 解決辦法:找一個AjaxPro.2.dll檔案放到bin資料夾裡就好了,我的空間這個檔案可以下載。

關於 未能載入檔案或程式“”或它的某一個依賴。找到的程式清單定義與程式引用不匹配。 的解決辦法

這是C#中經常遇到的一個問題‘未能載入檔案或程式集“”或它的某一個依賴項。找到的程式集清單定義與程式集引用不匹配。 ’,最常見的錯誤原因是:config配置檔案裡面宣告的dll版本與引用的dll版本不一

解決辦法由於oracle版本不同導致導入數據時失敗

tps https 是否 span note 版本 not mil images 在向一個數據庫導入dmp文件時,出現了如下錯誤 經查詢,是由於“導出的dmp文件與導入的數據庫的版本不同造成的” 用notepad查看dmp文件的版本,看看是否和數據庫版本一致 解決辦法:

Windows 10 安裝 VMware workstation 12 版本出錯,不兼容。解決辦法

oss 重新安裝 需要 ESS ext 方式 程序 text 重新 如果再程序和功能中沒有hyper怎麽辦呢?看我的,就是沒有的? 解決方法: 1、此時需要通過命令的方式去禁用。找到windows powershell,運行 2、輸入命令:bcdedit /set hyp

C#VS工程報錯CS0234 名稱空間“Microsoft.VisualStudio”中不存在型別或名稱空間名“VCProjectEngine(是否缺少程式引用

問題截圖: 大多數的C#程式都是以using使用名稱空間開頭,但是我們使用名稱空間的同事也必須包含其程式集,比如大部分的名稱空間“XXXX”中不存在型別或名稱空間名“XXXXX”錯誤都是因為沒有在引用裡面新增其程式集,那麼怎麼新增程式集呢? 一、“檢視”----->“解決方案

解決辦法KeyError: ‘ExpandBackward’及老版本pytorch/torchvision的安裝辦法

  在做pytorch向caffe轉換的時候,報錯: KeyError: ‘ExpandBackward’   解決辦法: 先解除安裝torch/torchvision。 安裝老版本的pytorch # 一般不成功。 # sudo pip2 install pytor

u-net程式換上自己的資料全黑的 解決辦法

做了一個月的u-net網路,剛開始前兩個星期很懵,因為總是跑出去全黑或者全灰的影象。看到網上好像沒有類似的教程,於是我總結一下我這一個月的亂撞南牆,希望給大家一些建議。 百度,調參,幾乎菜鳥能想到的方法我都用了,但是還是依然那個樣子。比如:調低學習率,增大epoch,把所有除以255的地方改為2

菜鳥程式猿之Velocity與jQuery的$發生衝突解決辦法

開發中檢視層引入jquery很平常的場景,今天使用jquery的ajax在velocity中呼叫,出現檢視錯誤,經查詢,發現jQuery 的$與velocity檢視技術有衝突,為此,解決方法有三種: 1、使用jQuery代替$。 如:jQuery.ajax();

transformClassesWithJarMergingForRelease解決辦法 解決版本衝突 解決jar包衝突

因為重複引用造成打包時候出現 transformClassesWithJarMergingForRelease的解決辦法 可以通過gradle配置或者在依賴宣告時新增exclude的方式來排除指定的引用。   exclude可以接收group和module兩個引數,這兩個引數可以單獨使用

解決辦法對‘operator delete(void*)’未定義的引用

   編譯出現以下錯誤,莫名其妙: ../gh-memory/libgh2memory.so:對‘operator delete(void*)’未定義的引用 ../gh-memory/libgh2memory.so:對‘std::_Rb_tree_decrement(std::_Rb_

[程式清單定義與程式引用不匹配]分析及解決

 上午在開啟一個Asp.net網頁時出現了這樣的錯誤資訊: 找到的名為“Infragistics.WebUI.UltraWebGrid.ExcelExport.v3.1”的程式集清單定義與程式集引用不匹配。   其中Infragistics.WebUI.UltraWe

解決 名稱空間中不存在型別或名稱空間名稱“App_Code”(是否缺少程式引用?)的問題

預設情況下,VS2010中新建的WebApplication中是沒有App_Code資料夾的,若需要使用,可以自己手動新增資料夾,然後將資料夾名稱設定為App_Code,然後在該資料夾新增需要的類即可,但有一點需要注意的就是,右鍵點選資料夾下的類,選擇“屬性”,然後將“生成

IDEA:解決辦法IntelliJ Java:-source 1.3中不支援,使用-source 5 或更高的版本一啟用

解決辦法:IntelliJ Java:-source 1.3中不支援,使用-source 5 或更高的版本一啟用 報錯: Java:-source 1.3中不支援增強型 for 迴圈 (使用-source 5 或更高的版本一啟用for-each迴圈) 我

elasticsearch引用jar包與其他jar衝突解決辦法

問題提出: 比如你的專案中引用的Joda 2.1,而elasticsearch 2.2.0引用的Joda 2.8,則在使用elasticsearch的時候以為會先找到Joda 2.1,導致elasticsearch用不起來,所以怎麼解決呢 1.新建一個maven專案進行