2016-09-20 90 views
-1

所以我有一個在我的開發機器上構建的項目,但不在我的CI服務器上(詹金斯)。爲什麼Jenkins找不到這個.NET AssemblyFoldersEx註冊表項?

即使從我的計算機複製了各種文件夾以使其可用,Jenkins仍無法找到我的主互操作程序集。

在我的機器,在那裏一切正常,我可以把我的Visual Studio的爲「診斷」級輸出選項,我可以看到它是如何計算出當這些PIA的是在...

Primary reference "Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". 
    Resolved file path is "C:\Program Files (x86)\Microsoft.NET\Primary Interop Assemblies\Microsoft.mshtml.dll". 
    Reference found at search path location "{Registry:Software\Microsoft\.NETFramework,v4.6.1,AssemblyFoldersEx}". 

請參閱上面引用的註冊表項?當我進入我的註冊表..我可以找到蕁麻疹:

  • 軟件\微軟\ .NETFramework
  • SOFTWARE \ Wow6432Node \微軟\ .NETFramework

每個蜂箱有幾個鍵像

  • v4.5.50709
  • V3.5
  • etc ...

但是我沒有看到似乎在上面粘貼的構建輸出片段中指出的v4.6.1鍵。如果有一些方法可以發現這個問題,或者更好的方法來配置Jenkins,所以它可以正確地引用Microsoft.mshtml.dll,我會非常感激。

+0

感謝先生。匿名投票我的問題沒有解釋 - 我沒有更改我的問題是更具體..希望有所幫助,並希望任何人的反饋,如果他們遇到類似的問題,建立他們的CI環境。你可以看到[我在這個問題上的回答](http://stackoverflow.com/a/39625029/1520850),爲什麼我最終最終刪除了首先需要這個依賴的代碼。 – bkwdesign

回答

0

長期和艱苦的搜索後,我發現,我有我的開發框一些「PIA」 redist.exe的,在以下位置:

C:/Program Files (x86)/Common Files/Merge Modules 

我有這幾條,由於多個版本的Visual Studio安裝在我的機器上。我確信我可能只需要運行其中的一個。無論如何,我雙擊每個.exe(我的CI服務器上有一個窗口正在到達我的開發工作站)並將它們安裝到我的Jenkins服務器上。

問題解決了!

enter image description here