java環境變量設置的意義

Java環境變量配置詳解

作為一個java開發者,在每次裝完jdk之后,都需要配置一下java的環境變量

JAVA_HOME:C:\Program Files\Java\jdk1.8.0_101(你的電腦上jdk的安裝路徑,因人而異)

CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

Path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

作為一個重裝系統的狂魔,大二到大三已經不知道配置過多少次這玩意了,但每次都要百度知道這玩意怎么配,而且每次都不知道這寫的是什么意思。下面我們來一個一個分析。

  • JAVA_HOME

    它指向jdk的安裝目錄,Eclipse/NetBeans/Tomcat等軟件就是通過搜索JAVA_HOME變量來找到并使用安裝好的jdk。 沒什么好說的,大家應該都能看懂吧。

  • Path環境變量

    作用是指定命令搜索路徑,在shell下面執行命令時,它會到PATH變量所指定的路徑中查找看是否能找到相應的命令程序。我們需要把 jdk安裝目錄下的bin目錄增加到現有的PATH變量中,bin目錄中包含經常要用到的可執行文件如javac/java/javadoc等待。“%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;“這里的%%其實就是引用之前寫好的JAVA_HOME,所以直接寫成”C:\Program Files\Java\jdk1.8.0_101、JAVA_HOME%\bin“也不會有問題

  • CLASSPATH環境變量(重點介紹)

    1. 首先先介紹一下CLASSPATH在java中代表什么,根據《Thinking In Java》中的解釋解釋器在運行java的時候首先CLASSPATH環境變量,CLASSPATH包含一個或多個目錄,用于查找class文件的根目錄。在java的代碼中我們經常寫到import *..之類什么的,那Java的編譯器又是怎么找到具體的類路徑呢。答案就在CLASSPATH中。
    2. 當編譯器遇到import語句時,就會在CLASSPATH的目錄下查找,比如”import java.util.ArrayList;“,那么就會在CLASSPATH路徑下查找java/util/ArrayList.java,如果沒找到就會報錯。

    ”.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;“,一點一點來,首先是".;",開始最讓我感到疑惑的就是這玩意是干嘛的,度娘了半天才知道這個是告訴JDK,搜索CLASS時先查找當前目錄的CLASS文件。%JAVA_HOME%同樣是對已經設置的環境變量的引用,后面的tools.jar是工具類庫,我們平時用到的:

    javac XXX.java

    實際上就是運行

    javac -Calsspath=%JAVA_HOME%/lib/tools.jar xx.xxx.Main XXX.java

    dt.jar是關于運行環境的類庫,如果不做swing的開發,這個也可以不加

  • 既然CLASSPATH環境這么重要,如果我們在開發時不設置這玩意會有什么影響嗎?在簡單作死了一下,把CLASSPATH環境變量給刪了,然后運行之前的項目,居然發現。。。。。。。

    一點影響也沒有!!!然后我在命令行中嘗試運行javac XXX.java ,居然也沒錯。表示整個人都思密達了,感覺自己試試被騙了。萬事不行找谷歌,后來才發現,jdk1.6之后就不需要配置這玩意了,坑爹呢這是,那你剛剛說那么多不都是廢話嗎。不過建議還是配一下,學習一下原理也是不錯的,以后出去也能裝裝逼嘛。不過其它兩個是一定要配置的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容