前情提要:我们已经完成了虚拟机的联网、ssh + vmtools + net-tools + vim的基础环境配置。接下来将进行jdk的安装与环境变量的配置,并介绍jdk与openjdk的区别,分享一个可以登录jdk官网的账号密码。
1.jdk与openjdk
在我前天第一次尝试搭建环境时,误下载安装了openjdk,于是搜索了两者的区别,openjdk只包含最精简的JDK,且OpenJDK源代码不完整,所以我们在配置环境时,最好下载jdk。
参考文章:OpenJDK和JDK区别
历史上的原因是,openjdk是jdk的开放原始码版本,以GPL协议的形式放出。在JDK7的时候,openjdk已经成为jdk7的主干开发,sun jdk7是在openjdk7的基础上发布的,其大部分原始码都相同,只有少部分原始码被替换掉。使用JRL(JavaResearch License,Java研究授权协议)发布。
至于openjdk6则更是有其复杂的一面,首先是openjdk6是jdk7的一个分支,并且尽量去除Java SE7的新特性,使其尽量的符合Java6的标准。
关于JDK和OpenJDK的区别,可以归纳为以下几点:
- 授权协议的不同
openjdk采用GPL V2协议放出,而JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用。
- OpenJDK不包含Deployment(部署)功能
部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,这些功能在Openjdk中是找不到的。
- OpenJDK源代码不完整
这个很容易想到,在采用GPL协议的Openjdk中,sun jdk的一部分源代码因为产权的问题无法开放openjdk使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码。因此这些不能开放的源代码将它作成plug,以供OpenJDK编译时使用,你也可以选择不要使用plug。而Icedtea则为这些不完整的部分开发了相同功能的源代码(OpenJDK6),促使OpenJDK更加完整。
- 部分源代码用开源代码替换
由于产权的问题,很多产权不是SUN的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替。
- openjdk只包含最精简的JDK
OpenJDK不包含其他的软件包,比如Rhino Java DB JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入。
- 不能使用Java商标
这个很容易理解,在安装openjdk的机器上,输入“java -version”显示的是openjdk,但是如果是使用Icedtea补丁的openjdk,显示的是java。(未验证)
总之,在Java体系中,还是有很多不自由的成分,源代码的开发不够彻底,希望Oracle能够让JCP更自由开放一些,这也是所有Java社区所希望的。
2.jdk的安装
(1)进入jdk官网的下载界面,安装jdk的压缩包
链接:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
(2)勾选后下载jdk
(3)提示输入账号密码,可以选择注册,或者直接用我分享的找个(也是网上找的,如果失效了可以自己注册或者上网搜一个用)
- 账号:2696671285@qq.com
- 密码:Oracle123
(4)登录后刷新界面,下载所需压缩包
(5)如果出现如下情况,我们可以直接用浏览器下载,不一定要用迅雷。
解决方法
1)在浏览器最上方地址栏旁取消勾选“使用迅雷接管浏览器下载”
2)取消后如图所示,迅雷图标变为黑白
3)完成,按上述步骤进行下载*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。
(6)进入 root 模式新建一个jdk目录 “sudo mkdir /usr/local/jdk1.8/”
mkdir /usr/local/jdk1.8/
(7)复制粘贴jdk压缩包到虚拟机(前提是安装了vmtools)
如果没有安装,可以查看我之前的博客~
这么详细?拿去吧你! ssh + vmtools + net-tools + vim
链接:https://blog.csdn.net/qq_53429158/article/details/119049633
(8)此时,进入终端输入“ls”,就可以看到jdk压缩包啦
(9)解压,输入命令“tar zxvf 文件名” 回车即可
注意:如果我们的文件名不一样,不要直接复制粘贴我的哈!
tar zxvf jdk-8u301-linux-x64.tar.gz
(10)耐心等待解压完毕,再次输入“ls”
(11)执行 “mv 当前你的解压完的jdk路径 你要拷贝到的路径” ;这就把将解压的jdk文件拷贝到了/usr/local/jdk1.8/
mv jdk1.8.0_301 /usr/local/jdk1.8/
如果出现“Permission denied”
原因是:没有权限进行读、写、创建文件、删除文件等操作。
解决办法:“sudo chmod -R 777 某一目录”
sudo chmod -R 777 /usr/local/jdk1.8/
其中
-R 是指级联应用到目录里的所有子目录和文件
777 是所有用户都拥有最高权限
然后再次执行命令“mv”
(12)打开目录/usr/local/jdk1.8/ ,显示菜单。就可以看到文件啦*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。
cd /usr/local/jdk1.8/
ls
(13)配置环境变量
1)输入命令“vim /etc/profile”,打开文件
vim /etc/profile
2)文件尾部添加如下代码
export JAVA_HOME=/usr/local/jdk1.8/jdk1.8.0_301
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
注意:第一行 /usr/local/jdk1.8是我们的安装路径 jdk1.8.0_301是文件名 如果我们的文件名不一样,记得修改!!!!!
如果没有经验,不知道怎么修改、入手,可以查看我之前的博客
虚拟机配置环境变量、更改文件 (以jdk为例)
链接:https://blog.csdn.net/qq_53429158/article/details/119082621
(14)让profile文件生效
source /etc/profile
(15)验证jdk 输入命令“java -version”
java -version
如果出现了如上界面,原因大概就是没有配置环境变量,或者环境变量配置错了。请重点检查文件名/安装路径!!!!
能成功显示版本则安装完毕!撒花*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。
在第(15)步如果和我第一次尝试一样,‘java’ not found 。大概率是安装路径或者文件名出错,之前看了许多教程都没有第(14)步,这是我仔细检查路径和文件名之后依然卡了一天的原因,真的是不断检查不断尝试啊啊啊啊!!!!!所以把第(14)步标红加粗了,希望这篇博客可以帮到大家~~~
ps:刚接触这些,欢迎讨论!!!
下面是我的其他博客~
mininet 的安装、使用 可视化页面
链接:https://blog.csdn.net/qq_53429158/article/details/119258605
————————————————
版权声明:本文为CSDN博主「九号迷妹」原创文章,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_53429158/article/details/119081618
————————————————