2012-03-15 184 views
19

我對Eclipse的兩個不同版本--32/64位有點困惑。Java和Eclipse - 32與64位

據我所知,Java字節碼(=你的代碼的構建)是平臺independend。如果用戶在32位JRE中運行字節碼,則代碼將作爲32位進程執行,如果用戶在64位JRE中運行字節碼,則代碼將執行爲64位進程。

Eclipse需要運行JRE,因爲它是用Java編寫的。但是,如果只有用戶的JRE版本很重要,爲什麼Eclipse的下載頁面上有32位和64位版本的Eclipse?

64位Eclipse版本是否需要64位JRE或JDK?如果是,爲什麼?


第二種困惑:我知道需要一個32位和64位版本的JRE。但是,如果生成的字節碼是平臺獨立的,爲什麼還有32位和64位版本的JDK?

謝謝

回答

7

這不是因爲運行環境,這是因爲Eclipse使用了一些本地的東西,並且必須在相應的JDK上運行。您在Eclipse內部開發的應用程序可以在您安裝的任何JRE上運行,只需在設置中指定即可。

JDK是一個編譯器,也是很多其他的東西。其中許多是本機應用程序,需要運行相應的平臺。

+0

謝謝,但我不明白。如果您不使用eclipse開發Java應用程序(例如C++),則根本不需要安裝JDK。那麼爲什麼你說這不是關於JRE,而是關於JDK? – alapeno 2012-03-15 20:22:29

+0

爲了運行字節碼,您只需要安裝正確的JRE。但要生成字節碼,您需要調用編譯器,它是JDK中的本機應用程序。 JDK內部有更多的本地應用程序,比如JNI的頭部生成器,Javadoc生成器等等。 – 2012-03-15 20:30:24

+0

如果您安裝了IDE,它會自動爲您調用這些應用程序。如果你沒有它,那麼你必須自己打電話給他們。 – 2012-03-15 20:32:22

8

Eclipse依賴於SWT,它本質上是本機代碼。將會有相當多的DLLs等等(在插件或功能目錄中)將被64位版本使用,這與32位版本有很大不同。

+0

謝謝。因此,您需要相應地將Eclipse版本下載到計算機上安裝的JRE版本,對吧? – alapeno 2012-03-15 20:20:57

+1

是的,這是正確的。 JRE又是一個系統依賴關係,因此全部取決於您正在使用的JRE。 – 2012-03-15 20:22:17