2015-01-04 100 views
2

我們有兩個自動構建作業,當有人試圖檢入對源代碼管理的更改時運行。一個用於i386,一個用於amd64。我一直認爲這是理所當然的,但我們的一位新員工問我們爲什麼需要他們,我不能給出誠實的答案。 所以問題是可以爲i386編譯C#代碼但是不能編譯amd64(反之亦然)?當設置爲一個平臺可以構建成功,但另一個平臺可能失敗?

+0

你是否在意編譯或其他構建的步驟,包括單元測試? – dbc

+0

你使用本地庫嗎? –

+0

取決於您的項目在做什麼,您的項目中是否有任何本機或處理器特定的程序集被引用?你也有自動運行的單元測試嗎? –

回答

3

C#應該一氣呵成編譯精「Any CPU

然而,當代碼依賴於已遵守了32位或64位,那麼你可能需要創建兩個構建過程的外部。

另一種方法是製作平臺特定庫的動態加載器,以決定在運行時加載哪些庫。這可能會很棘手,但可能使您能夠合併這兩個構建過程。

相關問題