1,下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
2.新建:/usr/lib/sunJVM/JDK
3.复制jdk-7u25-linux-x64.tar.gz到 :/usr/lib/sunJVM/JDK目录下
4.解压:sudo tar zxvf ./jdk-7u25-linux-x64.tar.gz
5.修改环境变量:$sudo gedit /etc/environment(/etc/environment一般不要轻易的去改。曾导致ubuntu开机后输入密码不能进入系统。2014.04.20)
添加如下:
JAVAHOME=/usr/lib/sunJVM/JDK/jdk1.7.0_25
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/sunJVM/JDK/jdk1.7.0_25/bin"
CLASSPATH=.:/usr/lib/sunJVM/JDK/jdk1.7.0_25/lib
6.执行下面命令来生效:($sudo source /etc/environment会提示找不到 source 命令找不到)
cd /etc/
$sudo source environment
7.设置默认的 jdk,因为系统可能将其他已安装的 jdk 作为默认 ,例如 open-jdk,因此需要在终端执行代码:
$sudo update-alternatives --install /usr/bin/java java /usr/lib/sunJVM/JDK/jdk1.7.0_25/bin/java 400
(400 是权重,可以设置为更大值)
$sudo update-alternatives --install /usr/bin/javac javac /usr/lib/sunJVM/JDK/jdk1.7.0_25/bin/javac 400
接着输入:
$sudo update-alternatives --config java
,选择对应的 jdk。
8.输入 java -version查看是否生效
在编译MTK代码的时候出错:
Your version is: javac 1.7.0_25.
The correct version is: 1.6.
但:
gaoshen@DELL-E6220:~$ java -version
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)
问题何在:去/etc/alternatives下查看:
gaoshen@DELL-E6220:/etc/alternatives$ ll j*
lrwxrwxrwx 1 root root 29 8月 20 14:38 java -> /usr/src/jdk1.6.0_31/bin/java*
lrwxrwxrwx 1 root root 41 8月 18 08:02 javac -> /usr/lib/sunJVM/JDK/jdk1.7.0_25/bin/javac*
原因在于javac -> /usr/lib/sunJVM/JDK/jdk1.7.0_25/bin/javac javac指的不对
/etc/alternatives$ sudo update-alternatives --install /usr/bin/javac javac /usr/src/jdk1.6.0_31/bin/javac 1888
这个时候
gaoshen@DELL-E6220:/etc/alternatives$ ll j*
lrwxrwxrwx 1 root root 29 8月 20 14:38 java -> /usr/src/jdk1.6.0_31/bin/java*
lrwxrwxrwx 1 root root 30 8月 30 18:48 javac -> /usr/src/jdk1.6.0_31/bin/javac*
就对了
mark
gaoshen@DELL-E6220:/usr/bin$ ll jav*
lrwxrwxrwx 1 root root 22 8月 18 08:00 java -> /etc/alternatives/java*
lrwxrwxrwx 1 root root 23 8月 18 08:02 javac -> /etc/alternatives/javac*
gaoshen@DELL-E6220:/usr/bin$ cd /etc/alternatives/
gaoshen@DELL-E6220:/etc/alternatives$ ll ja*
lrwxrwxrwx 1 root root 29 8月 20 14:38 java -> /usr/src/jdk1.6.0_31/bin/java*
lrwxrwxrwx 1 root root 30 8月 30 18:48 javac -> /usr/src/jdk1.6.0_31/bin/javac*
gaoshen@DELL-E6220:/etc/alternatives$ sudo update-alternatives --install /usr/bin/javac javac /usr/src/jdk1.6.0_31/bin/javac 1888