我正在尝试在linux服务器上运行我的.jar文件。
这些是我正在运行的命令
JAVA_HOME=/app/local/opt/jdk/packages/jdk1.6.0_30/
export PATH=$JAVA_HOME/bin:$PATH
cd folder
nohup java -jar program.jar &
周五跑步时,这种方式非常有效。但是,今天我得到了
Unrecognised option: - Could not create the Java virtual machine.
在我的nohup.out中
如果我在设置路径后运行java -v,我会遇到同样的问题。谁能提出任何建议?真的很困惑。
感谢您提供任何帮助。
答案 0 :(得分:7)
通常,当我们遇到这种异常(“无法识别的选项”导致“无法创建Java虚拟机”)时,JVM会显示无法识别的选项,如下所示:
Unrecognised option: -[option details] Could not create the Java virtual machine.
你没有任何细节的事实让你觉得你的命令中只有一个空格(“”)。
再看看确认。
答案 1 :(得分:1)
首先,-v
命令上没有java
选项。
(参考:http://docs.oracle.com/javase/6/docs/technotes/tools/windows/java.html ... Java 6版本...' cos就是您正在使用的。请尝试java -help
获取选项的简短列表。)
因此java -v
预计会失败。
作为一个实验我试过这个(在Fedora 22上使用OpenJDK Java 8 JDK):
$ java -foop
Unrecognized option: -foop
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
$
正如您所看到的,"无法识别的选项"消息告诉我它不明白的选项。看一下你问题中的信息,我们发现它是" - "。这似乎与您问题中的命令行不匹配,但另一方面,您问题中的命令行没有任何无效选项。
我想,另一种可能性是你有一个名为java
的shell别名。这将优先于shell命令路径上的任何命令。
另一件事是您正在运行古老版本的Java。 Java 6已经过了寿命终止,最后一个公开发布的版本是更新45.您正在运行2011年12月发布的更新30.从那时起,已经有很多安全补丁。我建议升级到Java 8 ...并确保让它保持最新。
答案 2 :(得分:0)
我在Win10上运行maven时遇到了这种故障,其中pom.xml位于名为C:\dir\OneDrive - bar\workspace\project
之类的文件夹中。
将项目移动到其他文件夹即可解决该问题。
答案 3 :(得分:0)
我在 8GB RAM 的 Raspberry Pi 4 上的 Ubuntu Mate 20.10 上使用 openjdk-8 运行 Netbeans 8.2 时收到相同的消息。这看起来像是一个向后兼容性问题,因为我以前从未发生过。