我創建了一個小型項目[0]在受控環境中重現錯誤。事實上,我使用jenkins來構建我的項目,一個很大的項目,我想做一些平行的構建。請讓我以圖形Delphi分佈式構建失敗
[MyBasicPackage] -----> [MyPackageTester] ------> [MyBasicApp]
.
.
+-----> [...]
+-----> [...]
這是我的[0],我對Spring容器註冊類TMyUnit(MyBasicPackage)進行測試所做的組織。我構建它並生成.dcu,.bpl等。 第二階段我建立我的MyPackageTester需要MyBasicPackage。最後,我構建了需要MyPackageTester的應用程序。到現在爲止還挺好。
當我嘗試建立我MyBasicPackage,說PC-00,拿到神器,並嘗試建立了MyPackageTester上PC-06(同拱,相同的操作系統,相同的IDE,同樣spring4d版本),和一個不錯的錯誤出現:
Unit TMyUnit was compiled with a different version of Spring.Container.Registration
所以,更新我在兩臺機器上spring4d(PC-00和PC-06),並建立他們。運行...並出現相同的錯誤。 檢查庫路徑選項(C:\ Program Files文件(x86)\ Embarcadero \ Studio \ 14.0 \ Componentes \ spring4d \ Library \ DelphiXE6 \ Win32 \ Debug),刪除dcu文件並在兩臺機器上再次構建它們,錯誤。 從複製dcu文件PC-00到PC-06避免任何類型的系統配置並出現相同的錯誤。
也許我正在嘗試做一些迄今爲止不可能做到的事情。我搜索了幾天沒有運氣。
任何想法?
請隨時叉子或拉入請求的例子)
問候
[0] https://github.com/graguirre/DelphiDepencyExample
由於任何原因,我無法動態鏈接到IDE中,所以我創建了一個makefile並且工作流暢。我創建了第三方單元目錄來保存spring的DCU,並且只需將-LUSpring.Core添加到我的構建選項編譯器中,即可動態鏈接Spring.Core的lib。我已經更新了這個解決方案到我的github repo https://github.com/graguirre/DelphiDepencyExample –
可以被源重新創建的二進制文件不應該存儲在VCS中,但是不管。 –
我會嘗試結帳春天,建立它,並與我的小項目鏈接。 –