Unable to find a java Virtual Machine-64位Oracle11g

來源:互聯網
上載者:User

標籤:style   http   color   java   os   io   strong   檔案   

Unable to find a java Virtual Machine--安裝64位版Oracle11gR2後無法啟動SQLDeveloper的解決方案
安裝64位版Oracle11gR2後發現啟動SQL Developer時彈出配置java.exe的路徑,找到Oracle內建java.exe後產生的路徑“C:\app\使用者名稱\product\11.2.0\dbhome_1\jdk”卻彈出錯誤資訊:

--------------------------
Unable to find a java Virtual Machine
to point to a location of a java virtual machine,please refer to the oracle9i Jdeveloper Install guide(jdev\install.html)
--------------------------

  由於沒有重新設定的機會,只好到安裝目錄“C:\app\使用者名稱\product\11.2.0\dbhome_1\sqldeveloper0\sqldeveloper\bin”中找到設定檔sqldeveloper.conf,修改其中“SetJavaHome”項為“SetJavaHome C:\Program Files\Java\jdk1.6.0_21”,這是另一個單獨安裝的JDK,結果還是一樣。

  於是,又配置成MyEclipse8.5所帶的JDK路徑“SetJavaHome C:\Users\使用者名稱\AppData\Local\Genuitec\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013”,一切正常,正納悶時,到網路上搜了一下,找到“http://forums.oracle.com/forums/thread.jspa?messageID=4449178”後終於受到了啟發,弄明白是怎麼回事。

  原來Oracle在製造64位版的時候沒注意Oracle11gR2所帶的SQL Developer是1.5.5.59.69版,不支援64位版的JDK,恰好64位Oracle帶的JDK和“C:\Program Files”中的JDK都是64位的。如果你單獨安裝的JDK中“C:\Program Files (x86)”中則說明是32位版的,是可以用的。為什麼MyEclipse所帶的JDK可用呢,因為MyEcipse8.5沒有64位版(包括最新的8.6也一樣),所以其中帶的JDK當然是32位版的了。明白了嗎?

  再來看看解決方案:

  既然你已經決定了要用64位版的Oracle11gR2:

(1)單獨安裝一個32位版的JDK就可以直接配置了;

(2)升級SQL Developer到2.1,把原來“C:\app\使用者名稱\product\11.2.0\dbhome_1”下的的刪除,下載(http://download.oracle.com/otn/java/sqldeveloper/sqldeveloper64-2.1.1.64.45-no-jre.zip)回來直接解壓得到一個sqldeveloper檔案夾放到同一位置即可。這時即可以配置“C:\Program Files”下的JDK,而Oracle內建的JDK,還是不能用的,因為這個2.1版的SQL Developer需要的JDK是1.6.0_04以上,而Oracle11gR2內建的JDK版本只有1.5.0_17。

  還沒完喲,還有個小小的問題沒有解決,“開始”菜單中的那個“SQL Developer”是指向“C:\app\使用者名稱\product\11.2.0\dbhome_1\sqldeveloper\sqldeveloper\bin\sqldeveloper.bat”的,這個無法啟動,也許你的機器可以啟動,網路上有人說過這個問題,開啟這個檔案一看,內容是:

java -Xmx640M -Xms128M -Xverify:none -Doracle.ide.util.AddinPolicyUtils.OVERRIDE_FLAG=true -Dsun.java2d.ddoffscreen=false -Dwindows.shell.font.languages= -XX:MaxPermSize=128M -Dide.AssertTracingDisabled=true -Doracle.ide.util.AddinPolicyUtils.OVERRIDE_FLAG=true -Djava.util.logging.config.file=logging.conf -Dsqldev.debug=false -Dide.conf="./sqldeveloper.conf" -Dide.startingcwd="." -classpath ../../ide/lib/ide-boot.jar oracle.ide.boot.Launcher

  解決辦法是:把前面的“-Xmx640M”修改為“-Xmx512M”即可。但運行這個命令,單擊那個允許運行程式的“是”後,沒有任何反應,但直接在資源管理員中運行這個BAT檔案會彈出一上類似DOS的視窗有很多資訊顯示後又彈出一個視窗,這個就是了。這樣運行感覺不太好,所以繼續改造:

  在“開始”菜單中的“SQL Developer”上右擊選屬性,把目標中的“C:\app\使用者名稱\product\11.2.0\dbhome_1\sqldeveloper\sqldeveloper\bin\sqldeveloper.bat”修改為“C:\app\使用者名稱\product\11.2.0\dbhome_1\sqldeveloper\sqldeveloper\bin\sqldeveloperW.exe”即可。

  至於預設運行“sqldeveloper.bat”,應該有其道理,知道原理者可以補充一下。

  現在才明白2G記憶體運行64位版Win7後在什麼情況下記憶體吃緊了,唉,要麼再去加一條2G的記憶體,要麼用用Oracle Database 10g Express Edition (Universal)就可以了,做開發是完全可以的,專門做伺服器不行,有些限制。


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.