淺析JAVA_HOME,CLASSPATH和PATH的作用

來源:互聯網
上載者:User

以下是對JAVA_HOME,CLASSPATH和PATH的作用進行了詳細的分析介紹,需要的朋友可以過來參考下 

1,設定JAVA_HOME:
一、為了方便引用
,比如,你JDK安裝在C:ProgramFilesJavajdk1.7.0目錄裡,則設定JAVA_HOME為該目錄路徑, 那麼以後你要使用這個路徑的時候, 只需輸入%JAVA_HOME%即可,避免每次引用都輸入很長的路徑串;

二、歸一原則, 當你JDK路徑被迫改變的時候, 你僅需更改JAVA_HOME的變數值即可, 否則,你就要更改任何用絕對路徑引用JDK目錄的文檔, 要是萬一你沒有改全, 某個程式找不到JDK, 後果是可想而知的----系統崩潰!

三、第三方軟體會引用約定好的JAVA_HOME變數, 不然, 你將不能正常使用該軟體, 以後用JAVA久了就會知道, 要是某個軟體不能正常使用, 不妨想想是不是這個問題.

2,設定CLASSPATH:
這 是一個很有趣,當然也比較折磨初學者的問題, 這個變數設定的目的是為了程式能找到相應的".class"檔案, 不妨舉個例子: 你編譯一個JAVA程式---A.java, 會得到一個A.class的類檔案,你在目前的目錄下執行java A, 將會得到相應的結果(前提是你已經設定CLASSPATH為"."). 現在, 你把A.class移到別的目錄下(例如:"e:"), 執行java A, 將會有NoClassDefFindError的異常,原因就是找不到.class檔案, 現在你把CLASSPATH增加為:".;e:"再在任何目錄下運行java A, 看看會有什麼結果~~:)~~~,一切正常, java命令通過CLASSPATH找到了.class檔案!

classpath=c:test就表示執行運行命令時去c:test檔案夾去找需要被執行的class檔案
在java5之前該路徑是不能指定當前路徑的,除非這樣設定:classpath=.;c:test,就表示先在目前的目錄找class檔案,要是沒找到就到c:test去找;(當一個變數有多個值時,多個值之間是有英文的分號隔開)
設定從當前所在目錄尋找(java1.5後預設):set classpath=.

3,設定PATH:(必須設定)
道理很簡單, 你想在任何時候都使用%JAVA_HOME%binjava等來執行java命令嗎, 當然不會, 於是, 你可以選擇把%JAVA_HOME%bin添加到PATH路徑下, 這樣, 我們在任何路徑下就可以僅用java來執行命令了.
(當你在命令提示字元視窗輸入你個代碼時,作業系統會在目前的目錄和PATH變數目錄裡尋找相應的應用程式,並且執行.)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.