一剃袍、JDK下載安裝(此步驟省略,官網(wǎng)下載或者優(yōu)盤安裝皆可)
JDK:Java Development Kit? Java開發(fā)工具包(用于開發(fā))
組成:常用命令+jre
JRE:Java Runtime Environment? Java運行環(huán)境(用于運行已開發(fā)好的Java程序)
組成:類庫第晰, jvm
二、JDK的環(huán)境變量配置
? ? ? ? 環(huán)境變量一般指在操作系統(tǒng)中用來指定操作系統(tǒng)運行環(huán)境的一些參數(shù)辽旋。其實就是告訴系統(tǒng)去哪里找要運行的jdk的相關內(nèi)容珠增。在我們編譯程序時,我們需要用到javac這個編譯工具葬馋,而javac是在java的安裝目錄下的卖鲤,當我們在其他目錄調(diào)用javac時,系統(tǒng)因為在當前目錄找不到就會報錯畴嘶,為了方便我們以后編譯程序蛋逾,不要每次編譯的時候就跑到java安裝目錄中去,因此需要設置環(huán)境變量窗悯。
1.右擊我的電腦——>屬性——>高級——>環(huán)境變量
為了方便設置環(huán)境變量区匣,在系統(tǒng)變量中新建一個變量叫JAVA_HOME(名字可隨便取)
點擊新建——>變量名:JAVA_HOME蟀瞧,變量值:你的java所在路徑沉颂,如這是我的安裝路徑:C:\Java\jdk1.7.0_21?
——>在系統(tǒng)變量中找到path.
PATH:指定一個路徑列表条摸,用于搜索可執(zhí)行文件的。執(zhí)行一個可執(zhí)行文件時铸屉,如果該文件不能在當前路徑下找到钉蒲,則依次尋找PATH中的每一個路徑,直至找到彻坛∏晏洌或者找完PATH中的路徑也不能找到,則報錯昌屉。Java的編譯命令(javac)钙蒙,執(zhí)行命令(java)和一些工具命令(javadoc,jdb等)都在其安裝路徑下的bin目錄中。因此我們應該將該路徑添加到PATH變量中间驮。path變量的含義就是系統(tǒng)在任何路徑下都可以識別java,javac命令
找到path——>雙擊躬厌,里面已經(jīng)有了一些內(nèi)容,不用管它們竞帽,在最前面加上“%JAVA_HOME%\bin; ” 扛施,雙引號里面的東西,分號不能少(此時注意輸入法一定要是英文的)
? ? ? ? 我來解釋下%? %這東西的作用:動態(tài)的獲取某一個已存在的環(huán)境變量的值屹篓。%JAVA_HOME%就表示了我們的安裝路徑疙渣,以后如果我們的安裝路徑改變,只需要在JAVA_HOME的值中改變相應路徑就行了堆巧,不需要每次都跑到path中去改動妄荔,我們知道path中已經(jīng)存在很多的值了,如果不小心將其刪掉或者改變谍肤,系統(tǒng)中的某些程序就不能正常運行了啦租,所以為了不出現(xiàn)這樣的失誤,我們用%JAVA_HOME%來代替可能需要變動的路徑谣沸,方便我們的操作刷钢,也使得看起來更加明了。
classpath:jdk1.5以后完全可以不配置這個環(huán)境變量乳附,會在當前目錄搜索類文件内地。(用于搜索Java編譯或者運行時需要用到的類),這個需要我們自己新建赋除,classpath是用來指定Java中類或者包所在的路徑阱缓,在以后的學習中,我們還需要JVM去尋找Java中的庫举农,這也是需要用classpath來指定路徑的荆针,總的來說,這是方便我們的JAVA虛擬機去尋找相應的類文件,JVM會按照classpath環(huán)境變量指定的地址依次尋找航背,已最先找到的為準喉悴,所以一般我們將其值設為? .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar最前面有個點,代表的是當前路徑玖媚。(rt.jar是JAVA基礎類庫箕肃,默認就在 根classloader的加載路徑里面。因此可以不用設置)
tools.jar 是系統(tǒng)用來編譯一個類的時候用到的 也就是javac的時候用到
javac XXX.java
實際上就是運行
java -Calsspath=%JAVA_HOME%/lib/tools.jar xx.xxx.Main XXX.java
dt.jar是關于運行環(huán)境的類庫,主要是swing的包 你要用到swing時最好加上
dt.jar好像是swing的一些什么類今魔,Eclipse開發(fā)環(huán)境默認的JRE也沒有包括它勺像。應該沒用。
編譯和運行需要的都是toos.jar里面的類 , 分別是
sun.tools.java.*;
sun.tools.javac.*;
三错森、檢驗
究竟是不是設置好了吟宦,還需要我們?nèi)z驗下,方法:
快捷鍵win+R——>輸入cmd——>輸java -version和javac