我正在尝试使用 javac 编译一个软件。问题是我使用 yum remove 删除了 open-jdk 并下载了 sun jdk 并将其安装在 /usr/java
文件夹中。
我不知道如何判断当前jvm是运行openjdk还是sunjdk。
我从 /usr/bin
文件夹中删除了 java 和 javac 文件,并使 PATH 变量包含 /usr/java/jdk1.6-0/bin< 中的新路径
.
每次重启系统后,我仍然在bin
文件夹中看到java文件。
有人可以帮我解决这个问题吗?
此外,如果这会有帮助,我正在尝试编译一个软件,它会给出以下警告:
List is a raw type. References to generic type List should be parameterized
我认为这是因为open-jdk。我不知道如何完全删除 open-jdk。
谢谢
请您参考如下方法:
从应用程序行为的角度来看,OpenJDK 和等效的 Oracle JDK 之间应该没有明显的差异。 JVM 的低层差异较小;例如JIT 编译器和垃圾收集器的性能改进。
如果您需要了解实际运行的版本,请使用
java -version
,或者(在正在运行的应用程序中)查看对象System.getProperties 中的属性()
。 (javadoc 解释了期望的标准属性。)有关原始类型的消息与您的系统是 OpenJDK 还是 Oracle JDK 无关。对于所有 Java 5/6/7 编译器,您都会收到类似的警告消息……包括来自 IBM 和其他地方的编译器。
实际问题出在您正在编译的代码中。您可以在短期内安全地忽略该警告...或者如果代码必须在 Java 5 之前的 JVM 上通过/runnable 保持可编译性。