首页 > 其他 > 详细

jdk

时间:2021-06-29 00:15:03      阅读:20      评论:0      收藏:0      [点我收藏+]

什么是jdk?

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

jdk包中的重要jar文件

  • rt.jar是JAVA基础类库,也就是你在java doc里面看到的所有的类的class文件
  • dt.jar是关于运行环境的类库,主要是swing的包
  • tools.jar是关于一些工具的类库,tools.jar中主要是jdk工具,包括javac,java,javap,javadoc等
[weblogic@localhost ~]$ ll jdk1.8.0_201/jre/lib/rt.jar 
-rw-r--r-- 1 weblogic weblogic 66356161 Dec 15  2018 jdk1.8.0_201/jre/lib/rt.jar

[weblogic@localhost ~]$ ll jdk1.8.0_201/lib/{dt,tools}.jar
-rw-r--r-- 1 weblogic weblogic   163047 Dec 15  2018 jdk1.8.0_201/lib/dt.jar
-rw-r--r-- 1 weblogic weblogic 18307081 Dec 15  2018 jdk1.8.0_201/lib/tools.jar

以上三个jar文件的作用

1、rt.jar

默认就在Root Classloader的加载路径里面的,而在Claspath配置该变量是不需要的;同时jre/lib目录下的其他jar:jce.jar、jsse.jar、charsets.jar、resources.jar都在Root Classloader中

2、tools.jar

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

dt.jar是关于运行环境的类库,主要是swing的包 在用到swing时最好加上。

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

jdk包中的重要jar文件

  • rt.jar是JAVA基础类库,也就是你在java doc里面看到的所有的类的class文件
  • dt.jar是关于运行环境的类库,主要是swing的包
  • tools.jar是关于一些工具的类库,tools.jar中主要是jdk工具,包括javac,java,javap,javadoc等
[weblogic@localhost ~]$ ll jdk1.8.0_201/jre/lib/rt.jar 
-rw-r--r-- 1 weblogic weblogic 66356161 Dec 15  2018 jdk1.8.0_201/jre/lib/rt.jar

[weblogic@localhost ~]$ ll jdk1.8.0_201/lib/{dt,tools}.jar
-rw-r--r-- 1 weblogic weblogic   163047 Dec 15  2018 jdk1.8.0_201/lib/dt.jar
-rw-r--r-- 1 weblogic weblogic 18307081 Dec 15  2018 jdk1.8.0_201/lib/tools.jar

以上三个jar文件的作用

1、rt.jar

默认就在Root Classloader的加载路径里面的,而在Claspath配置该变量是不需要的;同时jre/lib目录下的其他jar:jce.jar、jsse.jar、charsets.jar、resources.jar都在Root Classloader中

2、tools.jar

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

dt.jar是关于运行环境的类库,主要是swing的包 在用到swing时最好加上。

classpath: 和classpath*:的区别

classpath本质是jvm的根路径,jvm获取资源都是从该根路径下找的,注意这个根路径是个逻辑路径,并不是磁盘路径。比如两个jar包的路径是/a/a.jar和/b/b.jar,但是用classpath*:就可以找到这两个jar包中的资源。

搞懂了classpath指向的classes里放的东西,我们再来看看classpath: 和classpath*:的区别。

1.classpath:只会到你的classes路径中查找找文件。
2.classpath*:不仅会到classes路径,还包括jar文件中(classes路径)进行查找。

 

jdk

原文:https://www.cnblogs.com/zh-dream/p/14946392.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!