IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 不过如此! jdk 的安装/配置环境变量 jdk与openjdk 的区别 jdk 官网下载所需账号密码 虚拟机基础环境配置 超详细安装教程/介绍 Ubuntu18.04 SDN软件定义网络实验 -> 正文阅读

[Java知识库]不过如此! jdk 的安装/配置环境变量 jdk与openjdk 的区别 jdk 官网下载所需账号密码 虚拟机基础环境配置 超详细安装教程/介绍 Ubuntu18.04 SDN软件定义网络实验

前情提要:我们已经完成了虚拟机的联网、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:刚接触这些,欢迎讨论!!!

————————————————

版权声明:本文为CSDN博主「九号迷妹」原创文章,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/qq_53429158/article/details/119081618

————————————————

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-07-28 07:36:16  更:2021-07-28 07:36:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/1 8:25:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码