我正在尝试使用 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。

谢谢

请您参考如下方法:

  1. 从应用程序行为的角度来看,OpenJDK 和等效的 Oracle JDK 之间应该没有明显的差异。 JVM 的低层差异较小;例如JIT 编译器和垃圾收集器的性能改进。

  2. 如果您需要了解实际运行的版本,请使用 java -version,或者(在正在运行的应用程序中)查看对象 System.getProperties 中的属性()。 (javadoc 解释了期望的标准属性。)

  3. 有关原始类型的消息与您的系统是 OpenJDK 还是 Oracle JDK 无关。对于所有 Java 5/6/7 编译器,您都会收到类似的警告消息……包括来自 IBM 和其他地方的编译器。

    实际问题出在您正在编译的代码中。您可以在短期内安全地忽略该警告...或者如果代码必须在 Java 5 之前的 JVM 上通过/runnable 保持可编译性。


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!