Java 在 Windows 中运行良好,但 BlueJ IDE 的 Java 失败

Java works fine in Windows but BlueJ IDE's Java fails

提问人:Hack-R 提问时间:8/19/2016 最后编辑:Hack-R 更新时间:1/25/2019 访问量:692

问:

我安装了最新版本的 Java,它在 Eclipse 和其他程序中运行良好。

杜克大学(Duke University)的一门在线课程希望我下载并运行他们的Windows版BlueJ。我安装了它,但它无法启动。它说:

无法创建 Java 虚拟机

在确保 _Java_Options 环境变量设置了足够的堆后,我浏览了 BlueJ 程序文件夹。我看到在bin中它有自己的javaw.exe。当我尝试运行它时,我得到同样的错误。

我该如何解决这个问题?

我使用的是 Windows 10 64 位。

此 IDE 声称拥有自己的 JDK,并已准备好开箱即用:

窗户

在 Windows 上,BlueJ 与 Java 开发工具包 JDK 捆绑在一起,因此 只需下载一次。

Download the Duke/Coursera specific version (choose Save instead of Run)
Double-click the downloaded install file and follow the wizard to install it in your preferred location
By default, the installer will place a shortcut to BlueJ on your desktop

更新:

我终于有很好的感觉尝试从命令行运行 .exe 并将结果通过管道传输到文本文件:

C:\Program Files (x86)\BlueJ>BlueJ.exe > tmp.txt

文本文件的内容包括:

初始化 VM 时出错:无法预留足够的空间 2097152KB 对象堆的空间

所以它似乎没有足够的内存,但这很奇怪,因为我立即检查了资源监视器,我的 RAM 使用率仅为 2.7 GB 中的 16 GB。

更奇怪的是,我只是将堆大小更改为 1GB,然后重新运行完全相同的命令。结果是完全相同的错误消息......即使我将堆缩减到 2GB,它仍在尝试分配 1GB......_JAVA_OPTIONS

我还设置了

设置 JAVA_OPTS=“-Xms256m -Xmx512M”

但我仍然得到相同的结果。

Java 窗口

评论

0赞 Anton Malyshev 8/19/2016
只需选择另一门课程即可;)
0赞 AntJavaDev 8/19/2016
错误只是说??没有其他细节?Could not create the Java virtual machine
0赞 Hack-R 8/19/2016
@AntJavaDev正确
1赞 Hack-R 8/19/2016
@ManoDestra 会的。在我回到那台电脑之前还需要 6 个小时,但我今晚会根据您的建议更新它。
1赞 Hack-R 8/21/2016
@ManoDestra我刚才更新了问题。似乎 Java / BlueJ 声称它无法保留足够的 RAM,即使堆是 2GB 中的 16GB......

答:

0赞 Zia 8/19/2016 #1

请检查您的防火墙设置,如果项目名称/路径中使用了任何特殊字符,请将其删除并保留没有特殊字符。

您可以参考以下链接,它可能会解决您的问题,

http://www.bluej.org/faq.html#faq_What_should_I_do_about_this_error___Bluej_was_unable_to_create_a_virtual_machine__VM__to_execute_projects__

https://ask.fedoraproject.org/en/question/43029/bluej-not-working/

评论

0赞 Hack-R 8/19/2016
谢谢。我已确保防火墙中对 BlueJ 没有限制。当你提到一个项目时,你在说什么项目?我从来没有加载过IDE,所以如果你指的是BlueJ项目,那么就没有了。该错误消息也与我的略有不同。您在常见问题解答中链接的那个说 BlueJ 无法创建虚拟机,并且似乎暗示了 IDE 已经启动的状态。我的没有指定 BlueJ,IDE 无法启动。
1赞 Hack-R 8/21/2016 #2

我终于成功了。

诀窍是将初始(不是最大值,也不是初始和最大值)堆大小设置为一个非常的值,我相信这是因为 BlueJ 坚持使用 32 位 Java,即使 64 位可用:_JAVA_OPTIONS

设置 _JAVA_OPTIONS=“-Xms256m”

请注意,相同的设置没有好处。JAVA_OPTS

如果您对为什么会这样有更深入的了解,并希望提交此答案的更好版本,那么请这样做,我会将您的答案标记为解决方案。

0赞 Abitatha Roy 1/25/2019 #3

尝试重新安装 BlueJ。 这一次,将安装目录从 (C:\Program Files(x86)) 更改为 (C:\Program Files)。 它应该起作用。