一、系統(tǒng)環(huán)境
- 操作系統(tǒng):deepin 15.10.2 桌面版 64位
- 應(yīng)用程序:PyCharm Professional 2019.1.2
二、問題描述
在 deepin 應(yīng)用商店中安裝 PyCharm递览,在啟動(dòng) PyCharm 時(shí)彈出錯(cuò)誤提示:No JDK found. Please validate either IDEA_JDK, JDK_HOME or JAVA_HOME environment variable points to valid JDK installation
三狗超、原因分析
- JDK 是什么
JDK(Java Development Kit) 是 Java 語(yǔ)言的軟件開發(fā)工具包(SDK,Software Development Kit)谴忧,它包含了 Java 的運(yùn)行環(huán)境(JRE很泊,Java Runtime Environment)、Java 工具和 Java 基礎(chǔ)的類庫(kù)沾谓。因此委造,沒有 JDK 的話,將無(wú)法編譯 均驶、調(diào)試和運(yùn)行 Java 程序昏兆。 - JDK 有哪些
- OpenJDK 原是 SunMicrosystems 公司為 Java 平臺(tái)構(gòu)建的 Java 開發(fā)環(huán)境(JDK)的開源版本,完全自由妇穴,開放源碼爬虱。Sun Microsystems 公司在2006年的 JavaOne 大會(huì)上稱將對(duì) Java 開放源代碼隶债,于2009年4月15日正式發(fā)布 OpenJDK。甲骨文在 2010 年收購(gòu) SunMicrosystem 之后接管了這個(gè)項(xiàng)目跑筝。
- Oracle/Sun JDK里面包含的 JVM 是 HotSpotVM死讹、HotSpot VM只有非常少量的功能沒有在 OpenJDK 里,那部分在 Oracle 內(nèi)部的代碼庫(kù)里曲梗。這些私有部分都不涉及 JVM 的核心功能赞警。所以說,Oracle/Sun JDK 與 OpenJDK 其實(shí)使用的是同一個(gè)代碼庫(kù)虏两。Oracle/Sun JDK 包括以下3個(gè)版本:SE(J2SE)愧旦,standard edition,標(biāo)準(zhǔn)版定罢,是我們通常用的一個(gè)版本忘瓦,從 JDK 5.0 開始,改名為 Java SE引颈;EE(J2EE)耕皮,enterprise edition,企業(yè)版蝙场,使用這種 JDK 開發(fā) J2EE 應(yīng)用程序凌停,從 JDK 5.0 開始,改名為 Java EE售滤;ME(J2ME)罚拟,micro edition,主要用于移動(dòng)設(shè)備完箩、嵌入式設(shè)備上的 Java 應(yīng)用程序赐俗,從 JDK 5.0 開始,改名為 Java ME弊知。
- PyCharm 貌似用 Java 編寫的阻逮,需要 Java 的運(yùn)行環(huán)境。
- deepin 15.10.2 默認(rèn)安裝了 OpenJDK 8秩彤,在默認(rèn) OpenJDK 8 環(huán)境下是可以正常啟動(dòng) PyCharm 的叔扼,只不過中間更新了一次軟件包
sudo apt update
sudo apt upgrade
將 OpenJDK 8 升級(jí)到 OpenJDK 10,導(dǎo)致文章開頭提示的錯(cuò)誤漫雷。 - 解決思路瓜富,1.還原 OpenJDK 8;2.安裝 Oracle/Sun Java SE 8降盹。
四与柑、解決辦法
1.還原 OpenJDK 8
- 安裝:
sudo apt install openjdk-8-jdk
- 多版本情況下,設(shè)置默認(rèn):
sudo update-alternatives --config java
sudo update-alternatives --config javac
2.安裝 Oracle/Sun Java SE 8
- 下載 Oracle/Sun JDK
- Oracle 官網(wǎng)(國(guó)內(nèi)下載速度慢):https://www.oracle.com/technetwork/java/javase/downloads/index.html
- 國(guó)內(nèi)華為鏡像站(速度快但資源不全):https://repo.huaweicloud.com/java/jdk/
- 百度網(wǎng)盤:https://pan.baidu.com/s/1v6HsE0PZmPanX-AHbyTi0Q 密碼:u630
- 選擇 Java SE 8 版本(其它版本沒有測(cè)試成功或與下文的配置方法不同)
- 安裝 Java SE 8
解壓jdk-8u211-linux-x64.tar.gz
,將生成的jdk1.8.0_211目錄拷貝到指定目錄下
安裝路徑可以根據(jù)個(gè)人情況指定价捧,因?yàn)?deepin 默認(rèn)安裝了 OpenJDK每辟,安裝路徑在tar -zxvf jdk-8u211-linux-x64.tar.gz sudo mv jdk1.8.0_211 /usr/lib/jvm/
/usr/lib/jvm/
目錄下,為了集中管理也將jdk1.8.0_211
拷貝到該目錄下 - JDK 環(huán)境變量配置
- 配置
/etc/profile
在文件末尾添加以下代碼:sudo vi /etc/profile
注意 JDK 的路徑和版本號(hào)export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_211 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH
- 使配置生效
source /etc/profile
- 測(cè)試
輸出:java -version
java version "1.8.0_211" Java(TM) SE Runtime Environment (build 1.8.0_211-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
- 配置
/etc/environment
添加以下代碼:sudo vi /etc/environment
JAVA_HOME=/usr/java/jdk1.8.0_211
- 配置
- 重啟電腦
通過以上的操作干旧,PyCharm 應(yīng)該可以正常啟動(dòng)了渠欺。