摘要:使用,研究授權(quán)協(xié)議發(fā)布。兩者協(xié)議雖然都是開放源代碼的,但是在使用上的不同在于允許在商業(yè)上使用,而只允許個(gè)人研究使用。而則為這些不完整的部分開發(fā)了相同功能的源代碼,促使更加完整。
OpenJDK 還是 SunJDK?
由于剛開始接觸Linux,所以在搜索如何安裝jdk的問題上,有了不同的說法,其中有一種安裝是直接安裝OpenJDK,還有一種方法下載官方網(wǎng)站的SunJDK,那么兩個(gè)區(qū)別是什么呢?下面是知乎的網(wǎng)友給出的見解。
作者:Aloys寒風(fēng) 鏈接:https://www.zhihu.com/question/19646618/answer/40621705 來源:知乎 著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。
使用過LINUX的人都應(yīng)該知道,在大多數(shù)LINUX發(fā)行版本里,內(nèi)置或者通過軟件源安裝JDK的話,都是安裝的OpenJDK,那么到底什么是OpenJDK,它與SUN JDK有什么關(guān)系和區(qū)別呢?
歷史上的原因是,OpenJDK是JDK的開放原始碼版本,以GPL(General Public License)協(xié)議的形式放出(題主提到的open就是指的開源)。在JDK7的時(shí)候,OpenJDK已經(jīng)作為JDK7的主干開發(fā),SUN JDK7是在OpenJDK7的基礎(chǔ)上發(fā)布的,其大部分原始碼都相同,只有少部分原始碼被替換掉。使用JRL(JavaResearch License,Java研究授權(quán)協(xié)議)發(fā)布。至于OpenJDK6則更是有其復(fù)雜的一面,首先是OpenJDK6是JDK7的一個(gè)分支,并且盡量去除Java SE7的新特性,使其盡量的符合Java6的標(biāo)準(zhǔn)。關(guān)于JDK和OpenJDK的區(qū)別,可以歸納為以下幾點(diǎn):
授權(quán)協(xié)議的不同:OpenJDK采用GPL V2協(xié)議放出,而SUN JDK則采用JRL放出。兩者協(xié)議雖然都是開放源代碼的,但是在使用上的不同在于GPL V2允許在商業(yè)上使用,而JRL只允許個(gè)人研究使用。
OpenJDK不包含Deployment(部署)功能:部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,這些功能在OpenJDK中是找不到的。
OpenJDK源代碼不完整:這個(gè)很容易想到,在采用GPL協(xié)議的OpenJDK中,SUN JDK的一部分源代碼因?yàn)楫a(chǎn)權(quán)的問題無法開放給OpenJDK使用,其中最主要的部份就是JMX中的可選元件SNMP部份的代碼。因此這些不能開放的源代碼 將它作成plug,以供OpenJDK編譯時(shí)使用,你也可以選擇不要使用plug。而Icedtea則為這些不完整的部分開發(fā)了相同功能的源代碼 (OpenJDK6),促使OpenJDK更加完整。
部分源代碼用開源代碼替換:由于產(chǎn)權(quán)的問題,很多產(chǎn)權(quán)不是SUN的源代碼被替換成一些功能相同的開源代碼,比如說字體柵格化引擎,使用Free Type代替。OpenIDK只包含最精簡的JDK:OpenJDK不包含其他的軟件包,比如Rhino Java DB JAXP……,并且可以分離的軟件包也都是盡量的分離,但是這大多數(shù)都是自由軟件,你可以自己下載加入。
不能使用Java商標(biāo):這個(gè)很容易理解,在安裝OpenJDK的機(jī)器上,輸入“java-version”顯示的是OpenJDK,但是如果是使用Icedtea補(bǔ)丁的OpenJDK,顯示的是java。
總之,在Java體系中,還是有很多不自由的成分,源代碼的開發(fā)不夠徹底,希望Oracle能夠讓JCP更自由開放一些,這也是所有Java社區(qū)所希望的。
參考文章:
java - What is the difference between JVM, JDK, JRE & OpenJDK?http://blog.softrayn.com/2012...
Oracle JDK 和openJDK 有99.9%的代碼是一樣的,所以對于普通開發(fā)者沒有影響,為了日后少操些心,我還決定用官方的版本吧。
安裝SUN / Oracle JDK在官網(wǎng)下好版本。
2.創(chuàng)建一個(gè)目錄作為JDK的安裝目錄.
`sudo mkdir /java`
移動文件到/java目錄下
sudo mv /home/dreamer/下載/jdk-8u161-linux-x64.tar.gz /java
解壓文件
解壓文件之前,先cd到j(luò)ava文件夾下面。
sudo tar -zxvf /java/jdk-8u161-linux-x64.tar.gz
配置環(huán)境
sudo vim /etc/environment
配置請?zhí)鎿Q自己的文件夾。
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin" export CLASSPATH=“.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib” export JAVA_HOME=”/java/jdk1.8.0_121“
輸入
source /etc/environment是環(huán)境變量立即生效。
輸入java -version顯示成功則說明安裝成功。
7.這個(gè)時(shí)候還沒有結(jié)束,電腦重啟之后就用不了了,所以還需要配置所有用戶的環(huán)境變量
sudo vim /etc/profile
在文件的最后添加以下內(nèi)容:
#set Java environment export JAVA_HOME=/java/jdkXXX export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
8.同樣,需要使用命令使環(huán)境變量立即生效
source /etc/profile
至此JDK就安裝成功了??!
eclipse 下載。。。。(逃。。。。下載太慢 ,所以我覺得還是下載idea吧。。。。
可能這個(gè)原因使得idea份額變大的原因吧(逃。。。。
好了,下面是idea的下載安裝
同樣的道理。
官方下載IDEA,其中有一個(gè)是without JDK,但是我還是下載了含有JDK的版本,因?yàn)槲遗潞竺媸虑槎?,畢竟新手,所以也建議大家下載一個(gè)比較全的版本吧。
移動到安裝目錄
解壓
4.運(yùn)行,在安裝目錄運(yùn)行的bin目錄執(zhí)行。
`./idea.sh`
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/68678.html
摘要:安裝系統(tǒng)軟件更新系統(tǒng)和軟件谷歌瀏覽器,火狐瀏覽器,編輯器,編輯器,安裝搜狗輸入法官網(wǎng),安裝配置搜狗輸入法安裝下載并新建一個(gè)文件夾解壓文件設(shè)置環(huán)境變量設(shè)置文件或者編輯全局文件檢查是否安裝成功打開安裝版本迭代較快,有時(shí)候需要檢查 安裝系統(tǒng)軟件 更新系統(tǒng)和軟件 sudo apt-get update sudo apt-get upgade 谷歌瀏覽器,火狐瀏覽器,atom編輯器,sub...
摘要:前言配置環(huán)境變量的前提準(zhǔn)備的安裝環(huán)境變量的配置驗(yàn)證環(huán)境變量是否配置完成的安裝的初步使用使用教程前言相信大家都是剛剛接觸學(xué)習(xí)的小學(xué)渣們。配置環(huán)境變量的前提準(zhǔn)備的安裝是語言的靈魂,所以無不。 前言: 配置環(huán)境變量的前提準(zhǔn)備(JDK11的安裝): 環(huán)境變量的配置 驗(yàn)證環(huán)境變量是否配置完成 ecli...
閱讀 3690·2021-09-07 10:19
閱讀 3633·2021-09-03 10:42
閱讀 3588·2021-09-03 10:28
閱讀 2555·2019-08-29 14:11
閱讀 814·2019-08-29 13:54
閱讀 1600·2019-08-29 12:14
閱讀 421·2019-08-26 12:12
閱讀 3619·2019-08-26 10:45