我遵循了关于此问题的所有说明,但是最后一部分遇到了一些问题。
我实际上有Java 6.22版,并且想更新到6.30版。
因此,将提取的目录java-6-oracle
移入后,/usr/lib/jvm
我不知道该怎么办,因为上面答案中指出的脚本从Java 5更新为Java 6。
为了清楚起见,如果ls
在dir中执行以下操作,则输出以下内容/usr/lib/jvm
:
$ ls -l /usr/lib/jvm
total 8
lrwxrwxrwx 1 root root 14 2011-07-12 15:18 default-java -> java-6-openjdk
lrwxrwxrwx 1 root root 14 2011-07-12 12:19 java-1.6.0-openjdk -> java-6-openjdk
drwxr-xr-x 10 root root 4096 2012-04-12 12:06 java-6.31-oracle
drwxr-xr-x 7 root root 4096 2012-02-24 14:43 java-6-openjdk
我现在应该怎么办?
新增部分
在@fossfreedom的建议下,我还是运行了脚本,实际上它更新了Java版本。
实际上,如果我运行命令,java -version
输出将如下所示:
$ java -version
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) Server VM (build 20.6-b01, mixed mode)
目前仍然是一个问题,如果伊伦javac -version
它给我安装了旧版本:
$ javac -version
javac 1.6.0_22
如果我在此链接上使用测试仪,它将告诉我版本是
Java Version 1.6.0_22 from Sun Microsystems Inc.
怎么了
似乎Java Runtime Environment已更新,但Java Compiler和浏览器的Java插件没有更新。
如何更新它们?
其他新增部分
sudo update-alternatives --config java
将返回以下输出
$ sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-6.31-oracle/bin/java 1062 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6.31-oracle/bin/java 1062 manual mode
Press enter to keep the current choice[*], or type selection number:
通过将JRE正确更新到版本6.31的事实,这是有道理的,有关Java编译器和Java浏览器插件的问题。
有任何想法吗?
sudo update-alternatives
按照示例进行操作。