Ubuntu下安装最新OpenJdk1.8以及与jdk1.8的区别(网络整理)

2023-11-03

Linux下的JDK和OpenJDK有什么具体的区别

大多数Linux发行版本里,内置或者通过软件源安装JDK的话,都是安装的openjdk. 
openjdk是jdk的开放原始码版本,以GPL协议的形式放出。 
openjdk只包含最精简的JDK 
在安装openjdk的机器上,输入“Java -version”显示的是openjdk

openJDK 与 Sun 的 JDK 功能都是一样的,只是版权信息不一样。 
OpenJDK 公开了 JDK、JVM、JRE、Java 类库的源代码,而 Sun JDK 只公开了 Java 类库的源代码。

通过 LICENSE 文件可以看出 OpenJDK 是 GNU 许可证,而 Sun JDK 的 LICENSE 是 Java 许可证。

OpenJDK, Sun JDK, IBM JDK, Oracle JDK 等对于开发、运行没有什么问题。

1. Ctrl+Alt+T 打开终端执行以下命令:

sudo add-apt-repository ppa:openjdk-r/ppa

输入你的sudo密码继续

2. 升级系统资源包并安装openjdk1.8:

sudo apt-get update

sudo apt-get install openjdk-8-jdk

3. 在多个JDK版本中切换JDK

sudo update-alternatives –config java

选择你需要的JDK版本:

设置一个默认Java:

sudo update-alternatives –config javac

4. 检查JDK版本:

java -version

输出以下信息表示成功

openjdk version “1.8.0_01-internal” 
OpenJDK Runtime Environment (build 1.8.0_01-internal-b04) 
OpenJDK 64-Bit Server VM (build 25.40-b08, mixed mode)

5.设置jdk环境变量

这里采用全局设置方法,它是是所有用户的共用的环境变量

$sudo gedit ~/.bashrc 
添加以下代码:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib 

export PATH=${JAVA_HOME}/bin:$PATH

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu下安装最新OpenJdk1.8以及与jdk1.8的区别(网络整理) 的相关文章

  • 如何通过替换为空页映射来取消映射 mmap 文件

    Linux 用户空间有没有办法用空页面 映射自 dev null 或者可能是一个空页面 重复映射到从文件映射的页面的顶部 对于上下文 我想找到这个 JDK bug 的修复 https bugs openjdk java net browse
  • 通过特定分隔符删除字符串

    我的文件中有几列 其中第二列有 分隔符 我想删除第二列中的第一个 第三个和第四个字符串 并将第二个字符串留在该列中 但我有正常的分隔符空间 所以我不知道 input 22 16050075 A G 16050075 A G 22 16050
  • 如何在 Linux 中编写文本模式 GUI? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 当我编写脚本 程序时 我经常想弹出一个简单的文本 gui 来提示输入 我该怎么做 例如 来自 Shel
  • nginx 上的多个网站和可用网站

    通过 nginx 的基本安装 您的sites available文件夹只有一个文件 default 怎么样sites available文件夹的工作原理以及如何使用它来托管多个 单独的 网站 只是为了添加另一种方法 您可以为您托管的每个虚拟
  • Linux TUN/TAP:无法从 TAP 设备读回数据

    问题是关于如何正确配置想要使用 Tun Tap 模块的 Linux 主机 My Goal 利用现有的路由软件 以下为APP1和APP2 但拦截并修改其发送和接收的所有消息 由Mediator完成 我的场景 Ubuntu 10 04 Mach
  • 如何查明CONFIG_FANOTIFY_ACCESS_PERMISSIONS是否启用?

    我想利用fanotify 7 http man7 org linux man pages man7 fanotify 7 html我遇到的问题是在某些内核上CONFIG FANOTIFY ACCESS PERMISSIONS不起作用 虽然C
  • 在哪里可以找到并安装 pygame 的依赖项?

    我对 Linux 比较陌生 正在尝试安装 python 的 pygame 开发环境 当我运行 setup py 时 它说我需要安装以下依赖项 我找到并安装了其中之一 SDL 然而 其他人则更加难以捉摸 Hunting dependencie
  • Linux 中的动态环境变量?

    Linux 中是否可以通过某种方式拥有动态环境变量 我有一个网络服务器 网站遵循以下布局 site qa production 我想要一个环境变量 例如 APPLICATION ENV 当我在 qa 目录中时设置为 qa 当我在生产目录中时
  • 所有平台上的java

    如果您想用 java 为 Windows Mac 和 Linux 编写桌面应用程序 那么所有这些代码都相同吗 您只需更改 GUI 即可使 Windows 应用程序更像 Windows 等等 如果不深入细节 它是如何工作的 Java 的卖点之
  • 添加要在给定命令中运行的 .env 变量

    我有一个 env 文件 其中包含如下变量 HELLO world SOMETHING nothing 前几天我发现了这个很棒的脚本 它将这些变量放入当前会话中 所以当我运行这样的东西时 cat env grep v xargs node t
  • Linux 内核标识符中前导和尾随下划线的含义是什么?

    我不断遇到一些小约定 比如 KERNEL Are the 在这种情况下 是内核开发人员使用的命名约定 还是以这种方式命名宏的语法特定原因 整个代码中有很多这样的例子 例如 某些函数和变量以 甚至 这有什么具体原因吗 它似乎被广泛使用 我只需
  • CentOS:无法安装 Chromium 浏览器

    我正在尝试在 centOS 6 i 中安装 chromium 以 root 用户身份运行以下命令 cd etc yum repos d wget http repos fedorapeople org repos spot chromium
  • NPTL 和 POSIX 线程有什么区别?

    NPTL 和 POSIX 线程之间的基本区别是什么 这两者是如何演变的 POSIX 线程 pthread 不是一个实现 它是几个函数的 API 规范 纸上的标准 英文 其名称以pthread 以及定义在
  • Linux:在文件保存时触发 Shell 命令

    我想在修改文件时自动触发 shell 命令 我认为这可以通过注册 inotify 挂钩并调用来在代码中完成system 但是是否有更高级别的 bash 命令可以完成此任务 尝试 inotify 工具 我在复制链接时遇到问题 抱歉 但 Git
  • 使用 sh 运行 bash 脚本

    我有 bash 脚本 它需要 bash 另一个人尝试运行它 sh script name sh 它失败了 因为 sh 是他的发行版中 dash 的符号链接 ls la bin sh lrwxrwxrwx 1 root root 4 Aug
  • iptables通过注释删除特定规则

    我需要删除一些具有相同评论的规则 例如 我有带有 comment test it 的规则 所以我可以像这样获得它们的列表 sudo iptables t nat L grep test it 但是我怎样才能删除所有带有注释 测试它 的 PR
  • 为什么我可以直接从 bash 执行 JAR?

    我是一个长期从事 Java 工作的人 并且知道运行带有主类的 JAR 的方法MANIFEST MFJar 中的文件很简单 java jar theJar jar 我用它来启动 Fabric3 服务器 包含在bin server jar在其标
  • 查找哪个程序运行另一个程序

    我有一个 NAS 运行在 Redhat Linux 的有限版本上 我按照指示破解了它 这样我就可以访问 shell 这很有帮助 我还做了一些修改 其他人也做过修改 除了一个问题之外 它们似乎都工作得很好 不知何故 每隔 22 天 系统就会关
  • 如何通过ssh检查ubuntu服务器上是否存在php和apache

    如何通过ssh检查Ubuntu服务器上apache是 否安装了php和mysql 另外如果安装的话在哪个目录 如果安装了其他软件包 例如 lighttpd 那么它在哪里 确定程序是否已安装的另一种方法是使用which命令 它将显示您正在搜索
  • Linux 上有关 getBounds() 和 setBounds() 的 bug_id=4806603 的解决方法?

    在 Linux 平台上 Frame getBounds 和 Frame setBounds 的工作方式不一致 这在 2003 年就已经有报道了 请参见此处 http bugs java com bugdatabase view bug do

随机推荐

  • 【整理三】

    1 说说React生命周期中有哪些坑 如何避免 在代码编写中 遇到的坑往往会有两种 在不恰当的时机调用了不合适的代码 在需要调用时 却忘记了调用 getDerivedStateFromProps 容易编写反模式代码 使受控组件与非受控组件区
  • Python代码扫描:新一代 Python Linter工具Ruff -极力推荐-快的原因是Rust写的?

    目录 RUFF概述 特点 安装和使用 应用场景 配置 编辑器集成 PyCharm 外部工具 Ruff的规则 Ruff速度快的几个原因 最后 注意 后续技术分享 第一时间更新 以及更多更及时的技术资讯和学习技术资料 将在公众号CTO Plus
  • python认证考试-PECP-30-02备考

    前言 进入python institue官网查看认证内容和考试 购买考试凭据 PCEP的政策 PCEP的考试大纲 Python作为目前业界最受欢迎的语言 是大部分数据分析相关从业人员的一项必备技能 对于很多0基础的小白 经常会问的问题就是
  • Nature Machine Intelligence :Nature 机器智能

    官网地址 简称 NML
  • saltstack使用指南:saltstack组件之state状态管理

    saltstack之state状态管理 1 状态的概念及如何撰写一条状态 2 状态配置文件的各个要素 3 使用requisites对状态进行排序控制 一 状态的概念及如何撰写一条状态 远程执行模块的过程类似于一段shell脚本或python
  • 推荐Parallels Desktop虚拟机不为人知的优质功能:端口映射

    我在办公环境下 想要接入公司内部网络 必须报备自己的网卡mac地址 以及个人姓名等信息 非常麻烦 我有一个Linux环境运行的程序 需要临时运行在公司内网 为了避开报备网卡mac地址的麻烦 我把程序放到Parallels Desktop虚拟
  • 同步带长度计算器_同步带轮中心距与同步带长度计算

    同步带轮的节圆直径计算 d Pb Z d 节径Pb 齿距 参考附录表1 Z 齿数 圆周率 3 14159 同步带轮实际外圆直径计算 do d 2 d 节径 节顶距 参考附录表1 同步带轮中心距及同步带节线长计算 D 大带轮的节径d 小带轮节
  • dubbo与zookeeper的关系

    dubbo有很多服务的提供者和消费者 这么多的提供者和消费者需要一个管理中心来管理 这个时候用zookeeper来管理即可 这里的registry就是用zookeeper来实现的 Dubbo建议使用Zookeeper作为服务的注册中心 1
  • FPGA设计进阶2--FPGA时序约束

    Reference 1 xilinx FPGA权威设计指南 2 ASIC集成电路设计 3 综合与时序分析的设计约束实用指南 1 时序检查概念 1 1 基本术语 1 发送沿 Launch Edge 指发送数据的源时钟的活动边沿 2 捕获边沿
  • 在VMware中安装CentOS7

    在VMware中安装CentOS7 一 安装CentOS7 二 安装VMwareTools 三 配置共享文件夹 四 解决CentOS无法访问共享文件夹 一 安装CentOS7 CentOS7 3 1611下载地址 https vault c
  • 学习笔记(十六):商用Wi-Fi的功率延迟分布

    2019 Precise Power Delay Profiling with Commodity Wi Fi 读书笔记 功率延迟分布 Power Delay Profile PDP 刻画多径特性 在动作感知方面意义重大 使用Wi Fi设备
  • 【进阶】Java8新特性的理解与应用

    进阶 Java8新特性的理解与应用 前言 Java 8是Java的一个重大版本 是目前企业中使用最广泛的一个版本 它支持函数式编程 新的Stream API 新的日期 API等一系列新特性 掌握Java8的新特性已经是java程序员的标配
  • FileZilla连接FTP报错421的原因及解决办法

    在使用 FileZilla连接 FTP时报如下错误 421 There are too many connections from your internet address 这是由于FTP限制了客户端的 IP访问连接数量 同一时间内来自同
  • java实现数组穷举 非递归

    穷举String数组 可重载其它数据类型数组 param public static void qiongju String a for int i 0 i
  • “npm create vite“ 是如何实现初始化 Vite 项目?

    欢迎关注我的公号 前端我废了 查看更多文章 前言 我们从 vite 的官方文档中看到 可以使用 npm yarn pnpm create 命令来快速初始化一个基于 Vite 的项目 其实很多框架或库都会开发相应的脚手架工具 用于快速初始化项
  • 华为OD机试 - 恢复数字序列(Java)

    题目描述 对于一个连续正整数组成的序列 可以将其拼接成一个字符串 再将字符串里的部分字符打乱顺序 如序列8 9 10 11 12 拼接成的字符串为89101112 打乱一部分字符后得到90811211 原来的正整数10就被拆成了0和1 现给
  • web界面设计的原则和总结

    web设计原则和推理 意符 Signifiers 一种额外的提示 告诉用户可以采取什么行为 以及应该怎么操作 必须是可感知 eg 视觉 听觉 触觉等 摘自 设计心理学 1 可供性 Affordance 也被翻译成 示能 由 James J
  • XML 建模

    XML 建模 XML 建模 建模的由来 建模的思路 建模步骤 XML 建模 你好 这是你第一次使用 Markdown编辑器 所展示的欢迎页 如果你想学习如何使用Markdown编辑器 可以仔细阅读这篇文章 了解一下Markdown的基本语法
  • 京东AI发布FaceX-Zoo:用于人脸识别的PyTorch工具箱

    该框架面向人脸识别的研究开发社区 依靠高度模块化和可扩展的设计 FaceX Zoo提供了一个训练模块 具有各种heads和骨干 以实现最新的人脸识别 以及标准化的评估模块 仅需简单地编辑配置即可获得流行的基准 此外 还提供了一个功能齐全的人
  • Ubuntu下安装最新OpenJdk1.8以及与jdk1.8的区别(网络整理)

    Linux下的JDK和OpenJDK有什么具体的区别 大多数Linux发行版本里 内置或者通过软件源安装JDK的话 都是安装的openjdk openjdk是jdk的开放原始码版本 以GPL协议的形式放出 openjdk只包含最精简的JDK