步骤一:先从官网上下一个java jdk,网址:http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm .这是笔者自己下的jdk的网址链接(这里注意一下,笔者下载的jdk文件格式是rpm格式的,其实ubantu官方支持的文件按格式为dep)
步骤二:把下载好的jdk放到一个文件夹里面,直接在终端(terminal)下cd到该文件夹,输入指令为: cd 文件夹名需要一步一步cd哈),晕行安装指令:rpm -ivh jdk名称
可能会出现这个问题:(实在很抱歉,之前由于CSDN的原因,把笔者上传的图给自动删除了,所以读者这能凭借印象找些图了)
下面一段是从 csdn博主(暗淡亮点)http://blog.csdn.net/suleil1/article/details/49471723上复制过来的
简单来说,Ubuntu的软件包格式是deb,如果要安装rpm的包,则要先用alien把rpm转换成deb。
sudo apt-get install alien #alien默认没有安装,所以首先要安装它
sudo alien xxxx.rpm #将rpm转换位deb,完成后会生成一个同名的xxxx.deb
sudo dpkg -i xxxx.deb #安装
注意,用alien转换的deb包并不能保证100%顺利安装,所以可以找到deb最好直接用deb
有时候,我们想要使用的软件并没有被包含到 Ubuntu 的仓库中,而程序本身也没有提供让 Ubuntu 可以使用的 deb 包,你又不愿从源代码编译。但假如软件提供有 rpm 包的话,我们也是可以在 Ubuntu 中安装的。
方法一:
1. 先安装 alien 和 fakeroot 这两个工具,其中前者可以将 rpm 包转换为 deb 包。安装命令为:
sudo apt-get install alien fakeroot
2. 将需要安装的 rpm 包下载备用,假设为 package.rpm。
3. 使用 alien 将 rpm 包转换为 deb 包:
fakeroot alien package.rpm
4. 一旦转换成功,我们可以即刻使用以下指令来安装:
sudo dpkg -i package.deb
方法二:
1.CODE:
sudo apt-get install rpm alien
2.CODE:
alien -d package.rpm
3.CODE:
sudo dpkg -i package.deb
简单的说就是你的linux需要安装alien和fakeroot,把.rpm格式文件转化成.dep格式文件,再进行安装
步骤三:直接安装.dep 格式的jdk ,
安装:dpkg -i deb软件包名 (卸载:dpkg -e deb软件名)
步骤四:配置jdk的路径(环境变量)
方法一:在linux主文件夹(即下图界面),找到.bashrc文件,在文件最后面添加上下面那段代码
打开这个文件
export JAVA_HOME=/usr/java/jdk1.8.0_131
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/bin/tools.jar:$JRE_HOME/bin
export ANDROID_JAVA_HOME=$JAVA_HOME
方法二:
也是在终端输入一下指令: vi ~/.bashrc [听说 vi /etc/profile 编辑profile这个文件也可以,读者可以试试]
(注:vi就是vim,也可以输入vim,vim的使用可以参照这个http://www.cnblogs.com/crazylqy/p/5649860.html),输入上述环境变量代码
步骤五:(万事真的大吉吗?)在终端输入 javac 或 java -version,如果出现
那么恭喜你,你的jdk路径配置成功,但是也有可能出这种情况
Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object,出现这个问题原因就是你的.pack包没有转化成.jar包。
可以看出是没有找到基础类库,查看一下tools.jar及rt.jar 果然没有,果断重新解包出来,这个错误的原因是没有找到tools.jar及rt.jar;tools.jar是关于一些工具的类库,rt.jar包含了jdk的基础类库,也就是你在java doc里面看到的所有的类的class文件解包方法,jdk每个版本unpack 位置不一样,
例如:usr/java/jdk1.8.0_131/bin 下面有个unpack200 这个是1.8版本的,usr/java/jdk1.8.0_131/jre/bin 下面也有个unpack200当要解压tools.pack及rt.pack的时候。
(实在很抱歉,之前由于CSDN的原因,把笔者上传的图给自动删除了,这里找不到用户权限的图了,非常抱歉)
哇,又出现一个问题,这是因为我们只是在用户状态,没有root权限,只能给它root权限,输入指令:sudo su ,按enter键
(实在很抱歉,之前由于CSDN的原因,把笔者上传的图给自动删除了,所以读者这能凭借印象找些图了)
这张图是网上找的
接着输入unpack200 tools.pack tools.jar,又出现一个问题
(实在很抱歉,之前由于CSDN的原因,把笔者上传的图给自动删除了,这里找不到用户权限的图了,非常抱歉)
错误显示,我们没有安装openjdk-8-jre-headless和更高版本openjdk-9-jre-headless,因为笔者安装的jdk是1.8版本的,那就安装openjdk-8-jre-headless,输入指令: sudo apt-get install openjdk-8-jre-headless
安装成功之后,我们继续把.pack转化成.jar吧,
最后输入 java -version,圆满成功!
笔者出现这么多问题主要是刚装Ubantu,好多软件都没安装,导致好些指令用不了,希望这篇博文能帮助读者在安装jdk时少走一些弯路