java基礎一 java_home path classpath

剛開始學習java的時候總是離不開java_home path classpath這幾個環境變量,每次安裝jdk都要上網上找一找環境變量的設置,但從來也沒有好好的想一想這幾個環境變量代表的什麼意思,所以就有了這篇java基礎文章。


java_home:一般指向jdk的安裝目錄,例如:JAVA_HOME=C:\Program Files\Java\jdk1.6.0; 基本上這個沒什麼用,唯一的好處是有了它之後可以用來設置path,classpath,以後更改jdk的安裝目錄後改這個環境變量就OK了。


path:一般指向bin目錄,例如:path=%JAVA_HOME%\bin;,要不然我們鍵入java,javac,操作系統不知道這是什麼命令,他的作用就是告訴系統,java.exe,javac.exe在哪兒。


classpath:一般是指向dt.jar,tool.jar,另外還可以加上自己的class路徑。例如classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tool.jar; 


另外看到一些人的討論,挺好,貼過來,感謝各位

dt.jar和tools.jar是兩個java最基本的包,裏面包含了從java最重要的lang包到各種高級功能如可視化的swing包,是java必不可少的。
而path下面的bin裏面都是java的可執行的編譯器及其工具,如java,javadoc等,你在任意的文件夾下面運行cmd鍵入javac,系統就能自動召見java的編譯器就是歸功於這個環境變量的設置 


rt.jar是JAVA基礎類庫,dt.jar是關於運行環境的類庫,tools.jar是工具類庫 


設置在classpath裏是爲了讓你 import * 
--------------------------------------------------------------- 


web系統都用到tool.jar 


你用winrar看看裏面是什麼內容啦 
--------------------------------------------------------------- 


1. 
rt.jar 默認就在 根classloader的加載路徑裏面 放在claspath是多此一舉 
不信你可以去掉classpath裏面的rt.jar 


然後用 java -verbose XXXX 的方式運行一個簡單的類 就知道 JVM的系統根Loader的路徑裏面 


不光rt.jar jre\lib下面的大部分jar 都在這個路徑裏  


2. 


tools.jar 是系統用來編譯一個類的時候用到的 也就是javac的時候用到 


javac XXX.java 


實際上就是運行  


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


javac就是對上面命令的封裝 所以tools.jar 也不用加到classpath裏面 


3. 
dt.jar是關於運行環境的類庫,主要是swing的包   你要用到swing時最好加上 




dt.jar好像是swing的一些什麼類,Eclipse開發環境默認的JRE也沒有包括它。應該沒用。
tools.jar應用服務器用來編譯JSP文件,應用服務器自己會加載,不需要自己設置。




關於path和classpath的含義: 
1.path變量的含義就是系統在任何路徑下都可以識別java,javac命令 
2.classpath變量的含義是告訴jvm要使用或執行的class放在什麼路徑上,便於JVM加載class文件,.;表示當前路徑,tools.jar和dt.jar爲類庫路徑。如果不用Swing裏面的東西,可以不加dt.jar。 tools.jar裏面是最基本的工具類,比如javac,不加是無法做開發的。 




 1.  rt.jar   默認就在   根classloader的加載路徑裏面   放在claspath是多此一舉  不信你可以去掉classpath裏面的rt.jar  然後用   java   -verbose   **X   的方式運行一個簡單的類   就知道   JVM的系統根Loader的路徑裏面  不光rt.jar   jre\lib下面的大部分jar   都在這個路徑裏    
 2.  tools.jar   是系統用來編譯一個類的時候用到的   也就是javac的時候用到  javac   **.java  實際上就是運行     java   -Calsspath=%JAVA_HOME%\lib\tools.jar      xx.**.Main      **.java     javac就是對上面命令的封裝   所以tools.jar   也不用加到classpath裏面 
 3.  dt.jar是關於運行環境的類庫,主要是swing的包         你要用到swing時最好加上 




dt.jar是關於運行環境的類庫,主要是swing的包   
tools.jar是關於一些工具的類庫   
rt.jar包含了jdk的基礎類庫,也就是你在java   doc裏面看到的所有的類的class文件


編譯和運行需要的都是toos.jar裏面的類 , 分別是   
  sun.tools.java.*;   
  sun.tools.javac.*; 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章