Java 快速入门-06-JDK 目录文件说明

JDK:开发环境,搞技术的人或者应用服务器使用

JRE:运行环境,如浏览器插件或者Swing界面的客户端等最终用户需要使用

JDK自含一个JRE,并依赖于自含的JRE,如用JDK\bin\java启动程序

JDK 默认是在 C:\Program Files\Java\jdk1.8.*

JDK 目录下各文件说明

目录截图:

bin:存放java启动命令以及其他开发工具命令(如javac),该目录应保存到 PATH 变量中

db:纯 Java 开发的数据可 Derby,是一个开源的100%Java开发的关系数据库

include: C 语言头文件,支持用J ava 本地接口和 Java 虚拟机接口 来实现本机代码编程

jre: JDK 自含 JRE 的根目录,这是系统属性 java.home 所指向的目录,目录文件如下:

  • bin: 包含执行文件和dll等库文件,可执行文件和jdk/bin是一样,本目录不需要被PATH所包含

    • jdk1.8.*/jre/bin 目录下面工具说明:
    • javac:Java编译器,将Java源代码换成字节代
    • java:Java解释器,直接从类文件执行Java应用程序代码
    • appletviewer:执行HTML文件上的Java小程序类的Java浏览器
    • javadoc:根据Java源代码及其说明语句生成的HTML文档
    • jdb:Java调试器,可以逐行地执行程序、设置断点和检查变量
    • javah:可调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件
    • javap:反汇编器,显示编译类文件中可访问功能和数据,同时显示字节代码含义
    • jar:多用途的存档及压缩工具,可将多个文件合并为单个JAR归档文件
    • HtmlConverter:命令转换工具
    • native2ascii:将含非Unicode或Latinl字符的文件转换为Unicode编码字符的文件
    • serialver:返回serialverUID。serialver[show] 命令选项show用来显示一个简单的界面,输入完整的类名按Enter键或"显示"按钮,可显示serialverUID
    • client: 包含用Client模式的VM时需要的dll库
    • server:包含用Server模式的VM时需要的dll库
  • lib:jdk/jre/lib 目录,Java 运行环境所使用的核心类库、属性设置和资源文件。例如:
    . rt.jar —— 引导类(运行时(RunTime)的类,包含了 Java 平台的核心 API)。
    .
    charsets.jar —— 字符转换类

    • jre/lib目录下面工具说明:
    • amd64:内有jvm.cfg 是JVM 的配置文件,指定 JVM 加载哪个版本的 jvm.dll 文件。机器中默认安装是启动client 的JVM的,如果想要启动server的JVM,只要把 jvm.cfg 文件中的-server KNOWN 放到 -client KNOWN 前面去
    • applets: 用于applet需要用到的jar库文件,Applet类通过AppletClass Loader从本地文件系统中预加载,这样为减小大型 Applet 的启动时间提供了一些方式,如同从网上已经下载完成
    • cmm:色彩管理配置文件,这些文件是用于 Java 2D API 执行色彩对应转换的
    • ext:用于扩展 (Extensions)Java平台默认的安装目录。Extension Class Loader装入jar类库的地方
    • *localedata.jar—— 用于 java.text 和java.util 包的区域(locale)数据
    • security:用于安全管理的文件。其中包括安全策略(java.policy)和安全属性(java.security)文件
    • zi:存放着很重要的时区参数,Java 中所有有关日期、时间、时区的操作都跟这个目录下的文件有关。如时区的夏令时讫止时间、与标准时间的时间差、版本等等信息,电脑中的时区名为 Asia/Shanghai 那这个时区名对应的文件为 c:\jdk1.6.0\jre\lib\zi\Asia\Shanghai,这是一个二进制文件,是由sun.util.calendar.ZoneInfoFile类负责解析的(这个类未被归档,故无 API DOC,需去OpenJDK下载 JDK 的源代码才能看到源码和源码中的注释)
    • fonts:包括平台使用的 TrueType 字体文件
    • fontconfig.properties.src:用于配置逻辑字体的,在 AWT/Swing 程序中可能会用到。如果用 NetBeans 会发现NetBeans 中编辑器的字体很难看,我们就可以通过这个文件进行修改,然后再将这个文件改名为 fontconfig.properties
    • logging.properties:JDK 1.4 后增加的,用于配置Java 提供的日志记录器的格式,相当于 log4j 的log4j.properties 文件。更多关于 Java Logging 请点击这里

lib:jdk/lib 目录,开发工具所使用的文件

  • tools.jar:包含了在 JDK 中工具和实用工具支持的非核心类库
  • dt.jar: BeanInfo 文件设计时(DesignTime)的压缩包,用于告知交互式开发环境(interactive development environemts, IDE's)如何展示 Java 组件,并且如何让开发者自定义这些用于应用程序中
  • COPYRIGHT:版权
  • javafx-src.zip:JavaFX脚本是一种声明式、静态类型编程语言
  • LICENSE:许可证
  • README:信息说明
  • release:发布版本

src.zip:src.zip 为 src 文件夹下的压缩文件,src 中放置的是 JDK 核心类的源代码,通过该文件可以查看 Java 基础类的源代码

THIRDPARTYLICENSEREADME:第三方许可证信息

THIRDPARTYLICENSEREADME-JAVAFX.txt:JavaFX的第三方许可证信息

Java 快速入门-06-JDK 目录文件说明的更多相关文章

  1. Java快速入门-03-小知识汇总篇(全)

    Java快速入门-03-小知识汇总篇(全) 前两篇介绍了JAVA入门的一系小知识,本篇介绍一些比较偏的,说不定什么时候会用到,有用记得 Mark 一下 快键键 常用快捷键(熟记) 快捷键 快捷键作用 ...

  2. Java快速入门-01-基础篇

    Java快速入门-01-基础篇 如果基础不好或者想学的很细,请参看:菜鸟教程-JAVA 本笔记适合快速学习,文章后面也会包含一些常见面试问题,记住快捷键操作,一些内容我就不转载了,直接附上链接,嘻嘻 ...

  3. Java快速入门-02-基础篇

    Java快速入门-02-基础篇 上一篇应该已经让0基础的人对 Java 有了一些了解,接一篇更进一步 使用 Eclipse 快捷键 这个老师一般都经常提,但是自己不容易记住,慢慢熟练 快捷键 快捷键作 ...

  4. Qt快速入门系列教程目录

    Qt快速入门系列教程目录

  5. java struts2入门学习--基于xml文件的声明式验证

    一.知识点总结 后台验证有两种实现方式: 1 手工验证顺序:validateXxx(针对Action中某个业务方法验证)--> validate(针对Action中所有的业务方法验证) 2 声明 ...

  6. SpringBoot介绍,快速入门小例子,目录结构,不同的启动方式,SpringBoot常用注解

    SpringBoot介绍 引言 为了使用ssm框架去开发,准备ssm框架的模板配置 为了Spring整合第三方框架,单独的去编写xml文件 导致ssm项目后期xml文件特别多,维护xml文件的成本也是 ...

  7. ExtJs 6.0+快速入门,ext-bootstrap.js文件的分析,各版本API下载

    ExtJS6.0+快速入门+API下载地址 ExtAPI 下载地址如下,包含各个版本 http://docs.sencha.com/misc/guides/offline_docs.html 1.使用 ...

  8. JAVA基础系列:JDK目录结构

    0. 名词解释 SDK: Softeare Development Kit,用于开发JavaEE,包括JDK. JDK: Java Development Kit,java开发工具包,包括Java编译 ...

  9. 零基础学Java之Java学习笔记(二):Java快速入门

    提出要求: 开发一个 HelloWorld.java 程序,可以输出 "Hello,world!" 开发步骤: (1)将 Java 代码编写到扩展名为 HelloWorld.jav ...

随机推荐

  1. rbac表设计

  2. Q138 复制带随机指针的链表

    给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点. 要求返回这个链表的深拷贝. 示例: 输入: {"$id":"1",& ...

  3. ZigZag编码

    ZigZag编码 在网络传输和数据存储场景中,需要对数据进行压缩.数据压缩的算法非常多,但大部分的数据压缩算法的原理是通过某种编码方式不存储数据中的0比特位,因此0比特位越多,数据压缩的效果越好.Zi ...

  4. iterm自动登录ssh脚本

    经常在工作中需要切换到不同的服务器去部署,或者查看日志,每次登录都要去找对应的IP和地址,非常麻烦,最终决定使用iterm2+脚本来实现自动登录. 1.iterm2(下载安装不再介绍http://ww ...

  5. Path;Paths和Files;FileVisitor

    package filet; import java.io.FileOutputStream; import java.nio.file.FileStore; import java.nio.file ...

  6. [中英对照]Device Drivers in User Space: A Case for Network Device Driver | 用户态设备驱动: 以网卡驱动为例

    前文初步介绍了Linux用户态设备驱动,本文将介绍一个典型的案例.Again, 如对Linux用户态设备驱动程序开发感兴趣,请阅读本文,否则请飘过. Device Drivers in User Sp ...

  7. Compiler Principle

    1.Einleitung 1.1 Der Überblick über Compiler 1.1.1 Lexikalische Analyse Die lexikalische Analyse zer ...

  8. vue之生命周期的一点总结

    vue的生命周期的过程提供了我们执行自定义逻辑的机会,好好理解它的生命周期,对我们很有帮助. 一.vue实例的生命周期(vue2.0) 二.生命周期描述:(参考截图) 三.例子 window.vm = ...

  9. Javad的Validator框架概述

    Java EE 6 提出了 Bean Validation 规范,使用注解的方式对 Java Bean 进行约束验证,不局限于某一层次或者某一编程模型,灵活易用.下边将向您系统的介绍该规范的各种特性. ...

  10. laravel5.4学习--laravel安装

    1.使用Laravel HomeStead可以直接作为laravel的环境,如果没有使用Homestead,就必须保证开发环境满足以下要求 PHP版本 >= 5.6.4PHP扩展:OpenSSL ...