openSUSE下安装JDKjava运行环境搭建



openSUSE下安装JDK。1.从Oracle网站下载了 jdk-6u37-linux-i586.bin,在目录下执行 ./jdk-6u37-linux-i586.bin。开始提示没有权限,改用sudo ./jdk-6u37-linux-i586.bin说没有该命令。使用chmod +x jdk-6u37-linux-i586.bin赋予该文件可执行权限。生成了一个jdk1.6.0_37的目录。
或者直接展开tar.gz包,在/usr下建立java目录,然后将展开的jdk文件夹复制到那里。

2.用root权限在/usr目录下建立java文件夹,然后将jdk1.6.0_37文件夹及下面的东西全部移动到/usr/java/下。

3.设置JAVA_HOME 参考

root权限下执行
vi /etc/profile
添加以下内容到文件尾部

JAVA_HOME=/usr/java/jdk1.6.0_37
JRE_HOME=/usr/java/jdk1.6.0_37/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
接着使生效
source profile

4.修改java运行权限
修改java命令
update-alternatives –install “/usr/bin/java” “java” “/usr/java/jdk1.6.0_37/bin/java” 300
修改javac命令
update-alternatives –install “/usr/bin/javac” “javac” “/usr/java/jdk1.6.0_37/bin/javac” 300
修改jar命令
update-alternatives –install “/usr/bin/jar” “jar” “/usr/java/jdk1.6.0_37/bin/jar” 300

注意:执行update-alternatives命令要在root权限下,可能会提示找不到命令。但会告诉该命令在”/usr/sbin/下”(opemSuSE13.1),加上命令目录即可。

好像不起作用,还是这个命令管用
root权限下:
update-alternatives –config java
出现已经安装的多个Java版本,选择相应序号就可设置哪个java作为最高优先级运行了。


linux-sjaw:/usr/lib/jvm # update-alternatives –config java
There are 2 choices for the alternative java (providing /usr/bin/java).

 Selection    Path                                    Priority   Status
————————————————————
* 0            /usr/lib/jvm/jre-1.7.0-openjdk/bin/java   17147     auto mode
 1            /usr/java/jdk1.6.0_37/bin/java            90       manual mode
 2            /usr/lib/jvm/jre-1.7.0-openjdk/bin/java   17147     manual mode

Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/java/jdk1.6.0_37/bin/java to provide /usr/bin/java (java) in manual mode.
linux-sjaw:/usr/lib/jvm # update-alternatives –config javac
update-alternatives: error: no alternatives for javac
.

5.运行java -version看版本号
java version “1.6.0_37″
Java(TM) SE Runtime Environment (build 1.6.0_37-b06)
Java HotSpot(TM) Client VM (build 20.12-b01, mixed mode, sharing)

完成啦!