32位/64位系統,jdk32位,64位,32/64位jdk編譯出來的class和eclipse 32位和64位

首先關於32位/64位系統,jdk32位64位,32/64位jdk編譯出來的class和eclipse 32位和64位的一些對應關係作些說明。java

1.32位操做系統不能夠裝64位jdk,64位操做系統通常均可以安裝32位jdk,64位jdk是完美髮揮性能的。linux

2.64位eclipse只能在64位jdk上運行,運行時如不指定(在eclipse.ini中或啓動參數中)vm是會默認去取JAVA_HOME的,如未配置,則根據path中制定去尋找jre路徑,這個下面詳述。32位eclipse也只能在32位jdk上運行,一句話:eclipse和jdk的位數應該是對應的,不然報錯相似下面這種:windows

    Failed to load the JNI shared library "E:\Java\bin\..\jre\bin\client\jvm.dll".app

 3.class文件不管是32位仍是64位jdk編譯出來的,均可以通用,也不分是window的jdk仍是linux的jdk。eclipse

注意若是想安裝多個jdk又不想改動javahome的話,能夠在eclipse.ini  修改,爲eclipse設jdk,這樣啓動不一樣的eclipse時就不會有問題了。解決方法簡述:jvm

 eclipse在啓動時會去讀取eclipse.ini配置文件。加上紅字部分便可(根據本身的實際路徑),注意加的位置。性能

 

-startup
plugins/org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.400.v20160518-1444
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vm
E:\Program Files\Java\jdk1.8.0_92\jre\bin\server\jvm.dll  
    --這裏其實也可配javaw.exe   .可是啓動時會有一個eclipse.exe 和一個javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.8
-XX:+UseG1GC
-XX:+UseStringDeduplication
-Dosgi.requiredJavaVersion=1.8
-Xms256m
-Xmx1024m

 

 

關於path中配置了多個jdk,加載順序是先入爲主。就是第一個出現的就是用到的,然後面的會被忽略,而不是覆蓋。因此通常比較好的狀況,是在path中把你本身添加的jdk的bin文件的路徑放到最前邊,若是仍是不太懂,請看這一文章:http://ihyperwin.iteye.com/blog/1513754ui

還有在windows系統中最好設置個JAVA_HOME變量,在path中以下配置%JAVA_HOME%\bin,好處就是假設你把java安裝目錄修改了,修改JAVA_HOME的值便可,其餘的不用跟着修改了,相似Linux的符號連接,你懂的。spa