win10 java(jdk安裝)環(huán)境變量配置和相關(guān)問(wèn)題
寫(xiě)在前面的話
咱也不喜歡廢話,圖片和方法我都會(huì)特別標(biāo)注出來(lái)的,方法絕對(duì)詳細(xì),并且會(huì)把各個(gè)細(xì)節(jié)標(biāo)注出來(lái)。
剛開(kāi)始學(xué)習(xí)java在環(huán)境配置上遇到了很多問(wèn)題,東看看西看看最終還是解決了。感覺(jué)自己碰到的問(wèn)題蠻全的,這里統(tǒng)一寫(xiě)一篇文章,不光是做個(gè)紀(jì)錄也是方便大家互相學(xué)習(xí)解決。
前置條件(閱讀以下內(nèi)容需要掌握的知識(shí))
有一臺(tái)裝配了win10的電腦,可以連接網(wǎng)絡(luò)懂得基本的電腦操作即可。
其他的按照本教程來(lái)一遍就可以,保證達(dá)到最終配置成功的目的。
準(zhǔn)備
先了解一下java
JVM :英文名稱(Java Virtual Machine),就是我們耳熟能詳?shù)?Java 虛擬機(jī)。它只認(rèn)識(shí) xxx.class 這種類(lèi)型的文件,它能夠?qū)?class 文件中的字節(jié)碼指令進(jìn)行識(shí)別并調(diào)用操作系統(tǒng)向上的 API 完成動(dòng)作。所以說(shuō),jvm 是 Java 能夠跨平臺(tái)的核心,具體的下文會(huì)詳細(xì)說(shuō)明。
JRE :英文名稱(Java Runtime Environment),我們叫它:Java 運(yùn)行時(shí)環(huán)境。它主要包含兩個(gè)部分,jvm 的標(biāo)準(zhǔn)實(shí)現(xiàn)和 Java 的一些基本類(lèi)庫(kù)。它相對(duì)于 jvm 來(lái)說(shuō),多出來(lái)的是一部分的 Java 類(lèi)庫(kù)。
JDK :英文名稱(Java Development Kit),Java 開(kāi)發(fā)工具包。jdk 是整個(gè) Java 開(kāi)發(fā)的核心,它集成了 jre 和一些好用的小工具。例如:javac.exe,java.exe,jar.exe 等。
顯然,這三者的關(guān)系是:一層層的嵌套關(guān)系。JDK>JRE>JVM。
你需要的知道的就是jdk是你這樣的開(kāi)發(fā)者所需要的,jre是使用者需要的。
很明顯你在安裝了jdk必然會(huì)集成一個(gè)jre來(lái)給你使用,就像是你做飯拿jre這個(gè)勺子嘗了嘗你用jdk做出來(lái)的東西。
下載jdk
大致明白了之后,然后點(diǎn)擊此處下載jdk

你應(yīng)該會(huì)看到這樣的網(wǎng)頁(yè)
點(diǎn)擊圖中箭頭所指示的地方
如果不一樣也沒(méi)有關(guān)系 應(yīng)該只是網(wǎng)頁(yè)改版了 有一些英語(yǔ)知識(shí)找到JAVA se DOWNLOAD即可

緊接著點(diǎn)擊這里的 windows jdk-xx.x.x_windows-x64_bin.exe
然后瀏覽器就會(huì)開(kāi)始下載exe文件了,剩下的按照向?qū)С绦虬惭b你應(yīng)該沒(méi)有問(wèn)題。
這里我以默認(rèn)的安裝地址為例進(jìn)行接下來(lái)的部分。
常見(jiàn)問(wèn)題一覽
安裝后如何配置環(huán)境變量
不管你桌面有沒(méi)有“此電腦”這個(gè)圖標(biāo),這里用微軟自帶的搜索方法來(lái)打開(kāi)環(huán)境變量配置選項(xiàng)卡→

點(diǎn)擊即可打開(kāi) “系統(tǒng)屬性”選項(xiàng)卡→

1. 首先配置java_home變量(大小寫(xiě)不影響)
>變量名:JAVA_HOME >變量值:電腦上JDK安裝的絕對(duì)路徑
比如你我這里安裝在C:\Program Files\Java\jdk-13.0.1路徑處,所以我在變量值的框里填這個(gè)→

如果你找不好路徑地址,我也有個(gè)好辦法(能填好的可以跳過(guò)。)
在目錄下創(chuàng)建一個(gè)文本文件,隨便寫(xiě)些文字,然后保存為.html文件。 
然后雙擊打開(kāi)這個(gè)文件,你的瀏覽器地址欄會(huì)出現(xiàn)路徑,把xx.html刪去后剩下部分全選復(fù)制到變量名即可。

2. 添加classpath變量
如果存在 CLASSPATH 變量,選中點(diǎn)擊 (編輯)
如果沒(méi)有,點(diǎn)擊(新建)
輸入/在已有的變量值后面添加:
變量名:CLASSPATH變量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

3.修改path變量
由于 win10 的不同,當(dāng)選中 Path 變量的時(shí)候,系統(tǒng)會(huì)很方便的把所有不同路徑都分開(kāi)了,不會(huì)像 win7 或者 win8 那樣連在一起。
新建兩條路徑
%JAVA_HOME%\bin%JAVA_HOME%\jre\bin
(當(dāng)然也會(huì)有連在一起的情況,中間添加一個(gè)分號(hào) ; 即可)
注意這里可能出現(xiàn)的問(wèn)題。
首先檢查一下這里有沒(méi)有其他路徑標(biāo)到 jar jre jdk包含這些關(guān)鍵字的路徑,如果有請(qǐng)把它們刪除,因?yàn)檫@說(shuō)明你之前安裝過(guò)其他版本或者位置的jdk,會(huì)影響到你使用。
(我個(gè)人是裝matlab時(shí)候帶了一個(gè)jar#貌似是#以及去年裝的jdk,后面會(huì)出現(xiàn)java和javac地址不統(tǒng)一的問(wèn)題。這里先排除這個(gè)隱患)
為了以防萬(wàn)一,你也可以把剛才添加的兩條路徑上移至頂端。(我這步偷懶用了runoob的圖所以是英文move up)
%JAVA_HOME%\bin%JAVA_HOME%\jre\bin
然后點(diǎn)擊保存(確定)確定你的修改。
接著讓我們打開(kāi)cmd進(jìn)行檢驗(yàn)
(打開(kāi)cmd的方法:win+R喚出運(yùn)行對(duì)話框 輸入 cmd 打開(kāi)cmd)
輸入java或者javac ,然后回車(chē)會(huì)出現(xiàn)一大堆指令就說(shuō)明配置成功。

剩余的問(wèn)題
事情到這里并沒(méi)有結(jié)束,只有一個(gè)java程序在你的pc上正常運(yùn)行了,才能說(shuō)明我們的準(zhǔn)備已經(jīng)完成了。
為了測(cè)試需要準(zhǔn)備的
為了解決剩下的問(wèn)題,我們首先需要一個(gè)沒(méi)有問(wèn)題的簡(jiǎn)單程序,譬如 熟知的helloworld。這里我給出代碼,使用notepad++作為編輯器,當(dāng)然使用notepad(記事本)也可以。
public class hellworld {
public static void main(String []args) {
System.out.println("Hello World");
}
}
首先注意java是嚴(yán)格區(qū)別大小寫(xiě)的,其次我們保存的文件名需要和創(chuàng)建的類(lèi)的名字一樣,所以我保存的這個(gè)文件名叫helloworld.java。
為了方便調(diào)試,我建議將該文件暫時(shí)就保存在你cmd默認(rèn)的目錄下。
之后調(diào)用這個(gè)程序時(shí),還是打開(kāi)cmd。
在對(duì)應(yīng)目錄下輸入"javac xxx.java" xxx是你的文件名。
這里我輸入"javac xxx.java"
如果一切正常javac會(huì)在目標(biāo)文件夾下創(chuàng)建"xxx.class"文件且不返回任何內(nèi)容,如果出錯(cuò)則上述步驟存在錯(cuò)誤,請(qǐng)回頭再看看。
然后輸入"java xxx"
這里我輸入"java helloworld"
輸出"hello world"
如圖:

1、版本不統(tǒng)一(出現(xiàn)錯(cuò)誤 A JNI error has occurred, please check your installation and try again)
就像我們?cè)谏厦嬲f(shuō)的java 和javac版本不統(tǒng)一的情況。
首先學(xué)習(xí)下我們?nèi)绾螜z查版本是否統(tǒng)一:
在cmd輸入
"java -version"和"javac -version"注意不要把這里的 空格 給漏了。
版本統(tǒng)一的話會(huì)出現(xiàn)以下的樣子,注意看版本號(hào)是否一致。

如果不一致則刪除掉老版本的文件,再重新安裝jdk覆蓋一下。(這里說(shuō)說(shuō)怎么刪除老版本,建議下載everything 一個(gè)輕量級(jí)的應(yīng)用 可以快速檢索本地的文件)
在本地搜索老版本號(hào),然后將查看日期,將不是這個(gè)時(shí)間安裝的相關(guān)文件全部刪除,)
2、jar包位置出錯(cuò)(報(bào)錯(cuò)java.lang.ClassNotFoundException)
在helloworld階段遇到這個(gè)問(wèn)題應(yīng)該還是變量環(huán)境的問(wèn)題。
在經(jīng)過(guò)以上步驟之后依舊出現(xiàn),再次打開(kāi)環(huán)境變量設(shè)置,看看有沒(méi)有多設(shè)置classpath變量的內(nèi)容,并且把path里面非你所安裝版本的路徑都刪除。(參考上面第一部分的內(nèi)容。)
總結(jié)
以上所述是小編給大家介紹的win10 java(jdk安裝)環(huán)境變量配置和相關(guān)問(wèn)題,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
JAVA代碼設(shè)置selector不同狀態(tài)下的背景顏色
這篇文章主要介紹了JAVA代碼設(shè)置selector不同狀態(tài)下的背景顏色,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-05-05
擲6面骰子6000次每個(gè)點(diǎn)數(shù)出現(xiàn)的概率
今天小編就為大家分享一篇關(guān)于擲6面骰子6000次每個(gè)點(diǎn)數(shù)出現(xiàn)的概率,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02
Mybatis 數(shù)據(jù)庫(kù)連接池的實(shí)現(xiàn)示例
在Java應(yīng)用程序中,與數(shù)據(jù)庫(kù)的連接是非常昂貴的,因此,當(dāng)我們使用MyBatis進(jìn)行數(shù)據(jù)操作時(shí),需要一個(gè)連接池來(lái)分配并管理這些連接,本文主要介紹了Mybatis 數(shù)據(jù)庫(kù)連接池的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10
淺談SpringMVC中Interceptor和Filter區(qū)別
這篇文章主要介紹了淺談SpringMVC中Interceptor和Filter區(qū)別,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-04-04
Spring?myBatis數(shù)據(jù)庫(kù)連接異常問(wèn)題及解決
這篇文章主要介紹了Spring?myBatis數(shù)據(jù)庫(kù)連接異常問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06
Spring/SpringBoot?@RequestParam注解無(wú)法讀取application/json格式數(shù)據(jù)問(wèn)題
RequestParam用于將指定的請(qǐng)求參數(shù)賦值給方法中的形參,可以接受簡(jiǎn)單類(lèi)型屬性,也可以接受對(duì)象類(lèi)型,一般用于GET請(qǐng)求,下面這篇文章主要給大家介紹了關(guān)于Spring/SpringBoot?@RequestParam注解無(wú)法讀取application/json格式數(shù)據(jù)問(wèn)題解決的相關(guān)資料,需要的朋友可以參考下2022-10-10
Springboot允許logger.debug輸出日志方式
這篇文章主要介紹了Springboot允許logger.debug輸出日志方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06

