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源码的细节。