大家好。我一直在工作中遇到同樣的問題,我正在努力尋找新的途徑。由NUnit項目導致的System.BadImageFormatException
當我的解決方案構建在服務器上時,出現以下錯誤。我在運行/調試解決方案中的所有測試時沒有問題,並且它的構建正常。服務器和我的電腦都是x64。我遵循了很多我發現無濟於事的建議。
我已經在所有配置下的解決方案中將Platform Target設置爲x86。
我知道有一個nunit-console-x86.exe可以使所有的區別,但我不知道在代碼中指定此位置。
請意識到我已經開始關注互聯網,所以如果我錯過了某些東西,請道歉。
System.BadImageFormatException:無法加載文件或組件
'Spin.TradingServices.DataAcquisition.Test.NUnit, 版本= 1.0.12103.2060文化=中性公鑰=空' 或一個 及其依賴的。試圖加載一個 格式不正確的程序。
文件名: 'Spin.TradingServices.DataAcquisition.Test.NUnit, 版本= 1.0.12103.2060,文化=中立,公鑰=空'服務器堆棧跟蹤: 在System.Reflection.RuntimeAssembly._nLoad(的AssemblyName文件名,字符串的代碼庫,證據assemblySecurity,RuntimeAssembly locationHint,StackCrawlMark & stackMark,布爾throwOnFileNotFound, 布爾forIntrospection,布爾suppressSecurityChecks) 在System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(的AssemblyName assemblyRef,證據assemblySecurity,StackCrawlMark & stackMark, 布爾forIntrospection,布爾suppressSecurityChecks) 在System.Reflection.Assembly.Load(的AssemblyName assemblyRef) 在NUnit.Core.Builders.TestAssemblyBuilder.Load(字符串路徑) 在NUnit.Core.Builders.TestAssemblyBuilder.Build(串的AssemblyName,布爾autoSuites) 在NUnit.Core.Builders.TestAssemblyBuilder.Build(字符串的AssemblyName,字符串測試名,布爾autoSuites) 在NUnit.Core.TestSuiteBuilder.BuildSingleAssembly(TestPackage封裝) 在NUnit.Core.TestSuiteBuilder.Build( (TestPackage包) at NUnit.Core.SimpleTestRunner.Load(TestPackage package) at NUnit.Core.ProxyTestRunner.Load(TestPackage package) at NUnit.Core.ProxyTestRunner.Load(Tes tPackage封裝) 在NUnit.Core.RemoteTestRunner.Load(TestPackage封裝) 在System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr的 MD,對象[]指定參數時,對象服務器,的Int32 methodPtr,布爾 fExecuteInContext,對象[] & outArgs) 在System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(即時聊天 味精,的Int32 methodPtr,布爾fExecuteInContext)[0]時
異常重新拋出: 在System.Runtime.Remoting.Proxies。 RealProxy.HandleReturnMessage(IMessage reqMsg,IMessage retMsg) at System.Runtime.Remoting.Proxies.RealP樂聲。PrivateInvoke(MessageData & MSGDATA,的Int32類型) 在NUnit.Core.TestRunner.Load(TestPackage封裝) 在NUnit.Util.TestDomain.Load(TestPackage封裝) 在NUnit.ConsoleRunner.ConsoleUi.Execute(ConsoleOptions選項) 在NUnit.ConsoleRunner.Runner.Main(String [] args)
WRN:將裝配綁定日誌記錄關閉。要啓用程序集綁定失敗日誌記錄,請將註冊表值 [HKLM \ Software \ Microsoft \ Fusion!EnableLog](DWORD)設置爲1.注意:存在 會造成與程序集綁定失敗 日誌記錄相關的一些性能損失。要關閉此功能,請刪除註冊表值 [HKLM \ Software \ Microsoft \ Fusion!EnableLog]。
http://app1017-build.oy.gb.sportingindex.com:8080/job/TradingServices.DataAcquisition-Dev/ws/DataAcquisition/build.proj(86,5): 錯誤MSB6006:「nunit-console.exe」退出,代碼爲-100。完成 建設項目 「 (默認目標)的操作 - 失敗
構建失敗
請注意:。我們已經恢復哈德森我們的建設,現在重新投入更多的逐漸文件,我將如何這正好報到。試圖涉足這一個沒有用了幾個頭很遺憾。可惜!
更新 我還沒有回過此頁一會兒但看起來有很多不同的解決方案。如果我可以將它們全部標記爲我的答案!你們在這裏找到自己的方式應該給每個選項平等的信任。
什麼在運行你的測試? – 2012-03-26 15:46:44
Hudson http://hudson-ci.org/ – 2012-03-26 15:51:25