用 Oracle Java 替换 GIJ

用 Oracle Java 替换 GIJ

我正在尝试在我的服务器(CentOS 6)上运行 Google 的 Closure Compiler。我安装了它,但尝试运行它时只出现错误。

java.lang.NoSuchMethodError: method java.util.regex.Pattern.quote with signature (Ljava.lang.String;)Ljava.lang.String; was not found. (Closure::Error)
   at com.google.javascript.jscomp.RhinoErrorReporter.replacePlaceHolders(RhinoErrorReporter.java:68)
   at com.google.javascript.jscomp.RhinoErrorReporter.<init>(RhinoErrorReporter.java:74)
   at com.google.javascript.jscomp.RhinoErrorReporter.<init>(RhinoErrorReporter.java:32)
   at com.google.javascript.jscomp.RhinoErrorReporter$OldRhinoErrorReporter.<init>(RhinoErrorReporter.java:143)
   at com.google.javascript.jscomp.RhinoErrorReporter$OldRhinoErrorReporter.<init>(RhinoErrorReporter.java:139)
   at com.google.javascript.jscomp.RhinoErrorReporter.forOldRhino(RhinoErrorReporter.java:108)
   at com.google.javascript.jscomp.Compiler.<init>(Compiler.java:151)
   at com.google.javascript.jscomp.CommandLineRunner.createCompiler(CommandLineRunner.java:755)
   at com.google.javascript.jscomp.AbstractCommandLineRunner.doRun(AbstractCommandLineRunner.java:693)
   at com.google.javascript.jscomp.AbstractCommandLineRunner.run(AbstractCommandLineRunner.java:334)
   at com.google.javascript.jscomp.CommandLineRunner.main(CommandLineRunner.java:871)

看来我运行的是 GIJ 而不是 Oracle 的 Java,所以我认为这可能会导致我的问题。(或者可能不是,如果不太可能,请随时纠正我。)如何删除 GIJ 并安装 Oracle Java 来代替它?

我做了显而易见的事情:从 Oracle 下载 RPM,并rpm -Uvh jre-7u5-linux-x64.rpm以 root 身份运行。运行java --version后仍然是 GIJ。

我已经在 Google 上搜索了半个小时,但没有找到任何有用的信息。

答案1

运行alternatives --config java并选择Oracle版本。

答案2

找到你想要的包yum search java和/或yum provides java。在我的情况下是java-1.7.0-openjdk.x86_64,然后:

yum install java-1.7.0-openjdk.x86_64

使用以下方法删除不需要的版本yum remove

相关内容