打開Eclipse,出現 Failed to load the JNI shared library "D:\ 。 原來我的Eclipse是win32
而JAVA_HOME指向的是64位的jdk。 那就把Eclipse也換成64位的吧, 可是,等等! 為什么我另外一個環
境的Eclipse是32位的卻能正常運行,並且 首選項 ->> 已安裝的JRE 里顯示的當前正在使用的確實是64位的
jdk, 這又是為什么 ?
突然想起有一句介紹, “如果Eclipse報錯提示虛擬機內存不足, 可以考慮把一套jre拷貝到Eclipse目錄下,讓
Eclipse單獨跑一套jre”。 是不是目前能正常使用的32位Eclipse里有一套jre呢 ? 找到eclipse目錄發現果然是這
樣。 那就把32位的jre也拷貝到現在報錯的eclipse目錄中試試, 雙擊eclipse.exe,果然能正常啟動了。 編輯首
選項 ->> 已安裝的JRE,將64位的JDK添加進來。
猜想,Eclipse啟動的時候尋找JRE 和 運行java 程序時尋找JRE 是一樣的順序,都是按照
1. 當前目錄有沒有jre目錄
2. 父目錄底下的JRE子目錄
3. 查詢注冊表
因為JDK安裝的時候會有兩個jre,那么運行java程序的時候也是按照這個順序尋找最終用到的JRE。而開發環境到
底會用哪個jre,還是由 首選項 ->> 已安裝的JDK 配置決定的。