java基础一 java_home path classpath

来源:互联网 发布:英文网站源码 编辑:程序博客网 时间:2024/05/29 08:50

刚开始学习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.*; 

0 0
原创粉丝点击