ubuntu删除openjdk(linux删除已安装的软件)

大家好,今天小编来为大家解答以下的问题,关于ubuntu删除openjdk,linux删除已安装的软件这个很多人还不知道,现在让我们一起来看看吧!

ubuntu使用openjdk好还是sunjdk强

ubuntu下用openjdk要比sunjdk好。

OpenJDK是JDK的开放原始码版本,以GPL(General Public License)协议的形式放出(题主提到的open就是指的开源)。在JDK7的时候,OpenJDK已经作为JDK7的主干开发,SUN JDK7是在OpenJDK7的基础上发布的,其大部分原始码都相同,只有少部分原始码被替换掉。使用JRL(JavaResearch License,Java研究授权协议)发布。至于OpenJDK6则更是有其复杂的一面,首先是OpenJDK6是JDK7的一个分支,并且尽量去除Java SE7的新特性,使其尽量的符合Java6的标准。

关于JDK和OpenJDK的区别,可以归纳为以下几点:

授权协议的不同:OpenJDK采用GPL V2协议放出,而SUN 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代替。

OpenIDK只包含最精简的JDK:OpenJDK不包含其他的软件包,比如Rhino Java DB JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入。

不能使用Java商标:这个很容易理解,在安装OpenJDK的机器上,输入“java

-version”显示的是OpenJDK,但是如果是使用Icedtea补丁的OpenJDK,显示的是java。

总之,在Java体系中,还是有很多不自由的成分,源代码的开发不够彻底,希望Oracle能够让JCP更自由开放一些,这也是所有Java社区所希望的。

如何在Ubuntu Linux上安装Oracle Java

1、打开终端运行以下命令,检查你的Ubuntu Linux操作系统是32位的还是64位的。

输入/复制/粘贴: file/sbin/init

注意,它将显示的Ubuntu Linux操作系统架构位版本将是32位或64位。

2、检查你的系统上是否已安装Java。要检查该项,你需要在终端上运行Java版本命令。

打开终端并输入以下命令:

输入/复制/粘贴: java-version

如果你在系统上安装了OpenJDK,则命令的返回可能如下:

java version"1.7.0_15"

OpenJDK Runtime Environment(IcedTea6 1.10pre)(7b15~pre1-0lucid1)

OpenJDK 64-Bit Server VM(build 19.0-b09, mixed mode)

如果你在系统上安装了OpenJDK,那么你的Java发行商版本并不适用于本文所介绍的方法。

3、从你的系统上完全删除OpenJDK/JRE并创建目录保存Oracle Java JDK/JRE二进制文件。这将能避免系统冲突以及不同Java发行商版本所造成的混乱。例如,如果你在系统上安装了OpenJDK/JRE,可以在命令行中输入以下命令进行删除:

输入/复制/粘贴: sudo apt-get purge openjdk-\*

该命令将从你的系统上完全删除OpenJDK/JRE

输入/复制/粘贴: sudo mkdir-p/usr/local/java

该命令将创建用于保存Oracle Java JDK和JRE二进制文件的目录。

下载用于Linux的Oracle Java JDK/JRE。确保你选择了正确的、适用于你的系统架构的、32位或64位的压缩二进制文件(文件名以tar.gz结束)。

例如,如果你使用的是32位Ubuntu Linux,则应下载32位Oracle Java二进制文件。

例如,如果你使用的是64位Ubuntu Linux,则应下载64位Oracle Java二进制文件。

可选操作,下载Oracle Java JDK/JRE文档

选择jdk-7u40-apidocs.zip

重要信息:64位Oracle Java二进制文件无法应用于32位Ubuntu Linux操作系统,如果你尝试在32位Ubuntu Linux上安装64位Oracle Java,你将会得到多条系统错误信息。

5

把Oracle Java二进制文件复制到/usr/local/java目录。大部分情况下,Oracle Java二进制文件将被下载至:/home/"你的用户名"/Downloads。

32位Ubuntu Linux安装32位Oracle Java安装指南:

输入/复制/粘贴: cd/home/"你的用户名"/Downloads

输入/复制/粘贴: sudo cp-r jdk-7u45-linux-i586.tar.gz/usr/local/java

输入/复制/粘贴: sudo cp-r jre-7u45-linux-i586.tar.gz/usr/local/java

输入/复制/粘贴: cd/usr/local/java

64位Ubuntu Linux安装64位Oracle Java安装指南:

输入/复制/粘贴: cd/home/"你的用户名"/Downloads

输入/复制/粘贴: sudo cp-r jdk-7u45-linux-x64.tar.gz/usr/local/java

输入/复制/粘贴: sudo cp-r jre-7u45-linux-x64.tar.gz/usr/local/java

输入/复制/粘贴: cd/usr/local/java

6

把Java二进制文件解压缩到目录/usr/local/java

32位Ubuntu Linux安装32位Oracle Java安装指南:

输入/复制/粘贴: sudo tar xvzf jdk-7u45-linux-i586.tar.gz

输入/复制/粘贴: sudo tar xvzf jre-7u45-linux-i586.tar.gz

64位Ubuntu Linux安装64位Oracle Java安装指南:

输入/复制/粘贴: sudo tar xvzf jdk-7u45-linux-x64.tar.gz

输入/复制/粘贴: sudo tar xvzf jre-7u45-linux-x64.tar.gz

7

再三检查你的目录。现在,你应该有两个关于Java JDE/JRE的解压二进制目录在/usr/local/java中:

输入/复制/粘贴: ls-a

jdk1.7.0_45

jre1.7.0_45

8

编辑系统路径文件/etc/profile并添加以下系统变量到你的系统路径中。以root身份,使用nano、gedit或任何其他文本编辑器,打开/etc/profile。

输入/复制/粘贴: sudo gedit/etc/profile

或者

输入/复制/粘贴: sudo nano/etc/profile

9

使用箭头键滚动到文件底部并在/etc/profile文件的末尾添加以下行:

输入/复制/粘贴:

JAVA_HOME=/usr/local/java/jdk1.7.0_45

PATH=$PATH:$HOME/bin:$JAVA_HOME/bin

JRE_HOME=/usr/local/java/jre1.7.0_45

PATH=$PATH:$HOME/bin:$JRE_HOME/bin

export JAVA_HOME

export JRE_HOME

export PATH

10

保存/etc/profile文件并退出。

11

通知你的Ubuntu Linux系统你的Oracle Java JDK/JRE的位置。这将能让系统知道存在着新的可用Oracle Java版本。

输入/复制/粘贴: sudo update-alternatives--install"/usr/bin/java""java""/usr/local/java/jre1.7.0_45/bin/java" 1

该命令将提示系统存在这可用的Oracle Java JRE

输入/复制/粘贴: sudo update-alternatives--install"/usr/bin/javac""javac""/usr/local/java/jdk1.7.0_45/bin/javac" 1

该命令将提示系统存在这可用的Oracle Java JDK

输入/复制/粘贴: sudo update-alternatives--install"/usr/bin/javaws""javaws""/usr/local/java/jre1.7.0_45/bin/javaws" 1

该命令将提示系统存在这可用的Oracle Java Web start

12

通知你的Ubuntu Linux系统把Oracle Java JDK/JRE作为默认Java。

输入/复制/粘贴: sudo update-alternatives--set java/usr/local/java/jre1.7.0_45/bin/java

该命令将为系统设置java运行环境

输入/复制/粘贴: sudo update-alternatives--set javac/usr/local/java/jdk1.7.0_45/bin/javac

该命令将为系统设置javac编译器

输入/复制/粘贴: sudo update-alternatives--set javaws/usr/local/java/jre1.7.0_45/bin/javaws

该命令将为系统设置Java Web start

13

输入以下命令重载保存在文件/etc/profile内的系统范围内的PATH:

输入/复制/粘贴:./etc/profile

注意,保存在文件/etc/profile内的系统范围内的PATH将在重启Ubuntu Linux system后被重载

14

测试Oracle Java是否被正确地安装到了系统上。运行以下命令并注意Java的版本:

15

成功地完成安装的32位Oracle Java将显示:

输入/复制/粘贴: java-version

该命令显示了运行在你的系统上的java的版本

你将看到如下信息:

java version"1.7.0_45"

Java(TM) SE Runtime Environment(build 1.7.0_45-b18)

Java HotSpot(TM) Server VM(build 24.45-b08, mixed mode)

输入/复制/粘贴: javac-version

该命令将确认你可以在终端上编译Java程序。

你将看到如下信息:

javac 1.7.0_45

16

成功地完成安装的64位Oracle Java将显示:

输入/复制/粘贴: java-version

该命令将显示运行在你的系统上的java的版本

你将看到如下信息:

java version"1.7.0_45"

Java(TM) SE Runtime Environment(build 1.7.0_45-b18)

Java HotSpot(TM) 64-Bit Server VM(build 24.45-b08, mixed mode)

输入/复制/粘贴: javac-version

该命令将确认你可以在终端上编译Java程序。

你将看到如下信息:

javac 1.7.0_45

17

恭喜你,你已经在Linux系统上安装好了Oracle Java。

详细过程ubuntu下面编译openJDK8,修改源码IDEA中调试

编译JDK源码的最佳实践是亲手操作,理解其流程。网上有许多教程,但只有实际操作,才能深刻理解整个过程。

首先,环境准备上选择Ubuntu 16.04,因为在此版本下,编译过程中遇到的异常较少。使用低版本Ubuntu的主要目的是为了专注于编译源码和阅读源码,而不是研究版本兼容性问题。高版本的OpenJDK理论上可行,但这里更多是选择已熟悉使用的OpenJDK 8版本。

获取OpenJDK 8源码有两种方式:利用Mercurial(hg)或手动下载。Mercurial是OpenJDK使用的代码管理工具,通过hg clone命令下载源码。在遇到执行卡死问题后,改用手动下载方式。

下载地址为jdk.java.net,选择相应版本下载。下载后得到openjdk-8u41-src-b04-14_jan_2020.zip,解压后重命名为openjdk8。

接着,需要安装基础JDK作为编译环境。可选择手动下载已编译好的JDK7作为引导JDK,如openjdk-7u75-b13-linux-x64-18_dec_2014.tar.gz。解压并重命名后,配置系统环境变量,确保编译过程顺利进行。

安装编译所需的依赖,并检查是否遗漏。执行命令检查依赖,如有缺失,按照提示进行安装。ccache配置后出现版本过旧的提示,不影响编译。

编译前需进行一系列检查:设定语言选项、查看PATH环境变量、清除JAVA_HOME变量,确保编译环境配置正确。执行make all命令,过程中可能会遇到报错,通过修改相关源文件,如hotspot/make/linux/Makefile的SUPPORTED_OS_VERSION变量,添加4%,解决内核版本问题。

验证编译成功,通过执行java-version命令确认。编译后源码使用,如创建Test.java源文件,通过Javac编译器编译为Test.class文件。运行Test.class文件,输出信息确认编译成功。

在IDEA中使用JDK源码调试,首先安装IntelliJ IDEA,下载并解压到opt目录,通过idea.sh启动。将编译好的JDK导入IDEA,配置debug,去掉Before launch中的build选项,执行测试代码。

为了更方便地查看源码,可以修改JDK源码,如为System.out.println添加打印前缀。修改源码后重新编译,执行测试代码以验证修改效果。

通过实际操作和实践,对JDK源码的理解将更加深入。本指南提供了一个完整的编译和调试流程,帮助开发者深入理解JDK源码的细节。

阅读剩余
THE END