博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unable to find a java Virtual Machine-64位Oracle11g
阅读量:5823 次
发布时间:2019-06-18

本文共 2608 字,大约阅读时间需要 8 分钟。

  hot3.png

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”下的的删除,下载()回来直接解压得到一个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)就可以了,做开发是完全可以的,专门做服务器不行,有些限制。

转载于:https://my.oschina.net/lock0818/blog/303642

你可能感兴趣的文章
使用sqlserver的命令行工具sqlcmd
查看>>
常见的的样本数据归一化
查看>>
python-collections模块
查看>>
#1184 : 连通性二·边的双连通分量
查看>>
hdu 3460
查看>>
PHP读取文件夹的文件列表
查看>>
[CQOI2014]危桥
查看>>
对话:一个工程师在蘑菇街4年的架构感悟
查看>>
[置顶] 大型网站技术架构(六)网站的伸缩性架构
查看>>
python中几个常见的“黑盒子”之 列表list
查看>>
mysql在命令行中,指定要连接的数据库?
查看>>
第一次作业--四则运算
查看>>
nodejs之模块加载机制
查看>>
HDU 3682 To Be an Dream Architect
查看>>
myeclipse报错: java compiler level does not match the version of the installed java project facet...
查看>>
关于socket——SO_SNDBUF and SO_RECVBUF
查看>>
Apache VirtualHost配置
查看>>
ubuntu 14.04 sudo apt-get 简单 安装 ffmpeg
查看>>
Drupal如何在header区域显示搜索框
查看>>
php中str_repeat函数
查看>>