Linux系统下位(Ubuntu 11.04) 下安装配置 JDK 7安装步骤指导
第一步:下载jdk
下载内容为:
jdk分为:
jdk-7-linux-i586.tar.gz
jdk-7u51-linux-x64.tar.gz(适合64位Linux操作系统)
hadoop版本为:
hadoop-1.0.3.tar.gz
可以通过网盘下载,下载完毕,可以将压缩包从win7拖入虚拟机Linux,或则可以直接Linux直接下载
链接: http://pan.baidu.com/s/1jGr41SU 密码: rawv
或
则下面方式
- wget -c http://download.oracle.com/otn-pub/java/jdk/7/jdk-7-linux-i586.tar.gz
第二步:解压安装
- sudo tar zxvf ./jdk-7-linux-i586.tar.gz -C /usr/lib/jvm
- cd /usr/lib/jvm
- sudo mv jdk1.7.0/ java-7-sun
上面步骤可能会遇到问题:不成功可以使先复制到/usr/lib/jvm然后使用命令解压 tar -xvf ./jdk-7-linux-i586.tar.gz ,具体可参考搭建集群必会:Linux常遇到的问题总结及解压包范例
第三步:修改环境变量
- vim ~/.bashrc
添加:
- export JAVA_HOME=/usr/lib/jvm/java-7-sun
- export JRE_HOME=${JAVA_HOME}/jre
- export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
- export PATH=${JAVA_HOME}/bin:$PATH
保存退出,输入以下命令使之立即生效。
- source ~/.bashrc
对于环境变量的设置很重要,这里补充一下他们的含义:
AVA_HOME 用于指定JDK的主目录
JRE_HOME 用于指定JRE的主目录
CLASSPATH 有什么作用呢?编java程序的时候会用到import, 当要用的class,在某一个.jar下时,你需要在编译时引入,jvm自动去找CLASSPATH环境变量引入下面的jar包, 这就是CLASSPATH环境变量的作用。
PATH用于指定系统查找命令的路径,我们在命令行中的一个命令敲下去,系统会在PATH指定的目录中去寻找这个命令,如果找到了就执行,找不到就报错,就是我们常见的”Command not found ”,所以我们要要用到的java和javac等工具路径添加到PATH中。
第四步:配置默认JDK版本
由于ubuntu中可能会有默认的JDK,如openjdk,所以,为了将我们安装的JDK设置为默认JDK版本,还要进行如下工作。
执行代码:
- sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-7-sun/bin/java 300
- sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-7-sun/bin/javac 300
- sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/java-7-sun/bin/jar 300
- sudo update-alternatives --install /usr/bin/javah javah /usr/lib/jvm/java-7-sun/bin/javah 300
- sudo update-alternatives --install /usr/bin/javap javap /usr/lib/jvm/java-7-sun/bin/javap 300
执行代码:
- sudo update-alternatives --config java
系统会列出各种JDK版本,如下所示:
- snowdream@snowdream:~$ sudo update-alternatives --config java
- 有 3 个候选项可用于替换 java (提供 /usr/bin/java)。
- 选择 路径 优先级 状态
- ------------------------------------------------------------
- * 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 自动模式
- 1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 手动模式
- 2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 手动模式
- 3 /usr/lib/jvm/java-7-sun/bin/java 300 手动模式
- 要维持当前值[*]请按回车键,或者键入选择的编号:3
- update-alternatives: 使用 /usr/lib/jvm/java-7-sun/bin/java 来提供 /usr/bin/java (java),于 手动模式 中。
第五步:测试
- snowdream@snowdream:~$ java -version
- java version "1.7.0"
- Java(TM) SE Runtime Environment (build 1.7.0-b147)
- Java HotSpot(TM) Server VM (build 21.0-b17, mixed mode)
如果测试不成功可以查看帖子:linux(ubuntu)安装Java jdk环境变量设置及小程序测试
解决方法:
perl: warning: Setting locale failed
有时apt-get install ***软件名 或者dpkg-reconfigure ***软件名 会出现下面的
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
我的解决办法是:
vi /root/.bashrc
在最底部添加上一句
export LC_ALL=C
或者直接运行
#echo "export LC_ALL=C" >> /root/.bashrc
然后执行一下:
source /root/.bashrc
这样就搞定了 O(∩_∩)O
linux安装jdk出现java/lang/NoClassDefFoundError: java/lang/Object错误的解决方案
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
辛苦google了一个小时,终于找到了解决方案
首先要确认的是环境变量的设置是否正确
相信大家都是很细心的,这方面如果有错误也会很容易发现
然而还有一个隐蔽的地方也会产生上述的错误
就是lib和jre/lib文件夹中的rt和tools是否是打包后的形式
如果发现rt.pack 和 tools.pack 那么多半问题就出在这里
解决方法也很简单,只要将相应文件解压成rt.jar 和 tools.jar
可以使用bin里面的unpack200工具
如:unpack200 rt.pack rt.jar
解压后java -version应该就没有问题了~~
解决 java/lang/NoClassDefFoundError: java/lang/Object 错误
安装完JDK ,设定环境变量后出现这个错误:
[root@localhost lib]# javac
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
[root@localhost lib]# java
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
解决办法:分别把
/opt/jdk1.6.0_15/lib/ tools.pack 转为 tools.jar
/opt/jdk1.6.0_15/jre/lib/rt.pack 转为 rt.jar
[root@localhost lib]# pwd
/opt/jdk1.6.0_15/lib
[root@localhost lib]# unpack200 tools.pack tools.jar
[root@localhost lib]# ls
ct.sym htmlconverter.jar jconsole.jar orb.idl tools.jar tools.pack.bak
dt.jar ir.idl jexec sa-jdi.jar tools.pack visualvm
[root@localhost lib]# pwd
/opt/jdk1.6.0_15/jre/lib
[root@localhost lib]# unpack200 rt.pack rt.jar