jdk目录结构

c1f0df3253f1414ea4c3ed89bee9437d.jpg

 

jdk目录详解

JDK(Java Development Kit,Java开发包,Java开发工具)是一个写Java的applet和应用程序的程序开发环境。它由一个处于操作系统层之上的运行环境还有开发者 编译,调试和运行用Java语言写的applet和应用程序所需的工具组成。 

 

      JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Software development kit)。 

 

      JDK包含的基本组件包括: 

 

      ·javac – 编译器,将源程序转成字节码 

      ·jar – 打包工具,将相关的类文件打包成一个文件 

      ·javadoc – 文档生成器,从源码注释中提取文档 

      ·jdb – debugger,查错工具 

 

      JDK中还包括完整的JRE(Java Runtime Environment,Java运行环境),也被称为private runtime。包括了用于产品环境的各种库类,以及给开发员使用的补充库,如国际化的库、IDL库。 

 

      JDK中还包括各种例子程序,用以展示Java API中的各部分。 

 

      从初学者角度来看,采用JDK开发Java程序能够很快理解程序中各部分代码之间的关系,有利于理解Java面向对象的设计思想。JDK的另一个显著特点 是随着Java (J2EE、J2SE以及J2ME)版本的升级而升级。但它的缺点也是非常明显的就是从事大规模企业级Java应用开发非常困难,不能进行复杂的Java 软件开发,也不利于团体协同开发。 

 

      JDK一般有三种版本: 

 

      SE(J2SE),standard edition,标准版,是我们通常用的一个版本 

      EE(J2EE),enterpsise edtion,企业版,使用这种JDK开发J2EE应用程序, 

      ME(J2ME),micro edtion,主要用于移动设备、嵌入式设备上的java应用程序 

 

      Java开发工具(JDK)是许多Java专家最初使用的开发环境。尽管许多编程人员已经使用第三方的开发工具,但JDK仍被当作Java开发的重要工具。 

 

   JDK由一个标准类库和一组建立,测试及建立文档的Java实用程序组成。其核心Java 

 

   API是一些预定义的类库,开发人员需要用这些类来访问Java语言的功能。Java API包括一些重要的语言结构以及基本图形,网络和文件I/O。一般来说,Java API的非I/O部分对于运行Java的所有平台是相同的,而I/O部分则仅在通用Java环境中实现。 

 

   作为JDK实用程序,工具库中有七种主要程序。 

 

   Javac:Java编译器,将Java源代码转换成字节码。 

   Java:Java解释器,直接从类文件执行Java应用程序字节代码。 

   appletviewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。 

   Javadoc:根据Java源码及说明语句生成HTML文档。 

   Jdb:Java调试器,可以逐行执行程序,设置断点和检查变量。 

   Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。 

   Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。 

 

一、JDK文件结构 

 

      本文档给出 JDK 目录及其所包含的文件的概述。 

 

      开发文件和目录 

 

      本节对开发 Java 平台应用程序所要求的文件和目录进行说明。(不要求的目录有:演示程序、Java 源代码和 C 头文件。下一节附加文件和目录将对它们进行论述。) 下图列出的是最重要的目录: 

 

                 jdk1.2 

        ___________|____________________ 

       | | | 

      bin lib jre 

       | | __________|___________ 

   java.exe tools.jar | | 

   javac.exe dt.jar bin lib 

   javap.exe _____|____ ________|________ 

   javah.exe | | | | | 

   javadoc.exe java.exe classic rt.jar ext    

security 

                   java.dll | i18n.jar | 

                   awt.dll jvm.dll iiimp.jar    

      假定 JDK 软件安装在 c:\jdk1.2 目录中,下面列出的是那些关键目录及它们之所以重要的原因: 

 

      c:\jdk1.2 

      JDK 软件安装的根目录。包含版权、许可及 README 文件。还包括: 

      src.jar -- 构成 Java 平台核心 API 的所有类的源文件的归档。 

      c:\jdk1.2\bin 

      Java 开发工具包 (JDK) 中所包含的开发工具的可执行文件。PATH 环境变量应该包含一个指示此目录的项。有关工具的详细信息,参见 JDK 工具。 

      c:\jdk1.2\lib 

      开发工具使用的文件。这些文件包括 tools.jar,它包含支持 JDK 的工具和实用程序的非核心类。还包括 dt.jar,它是 BeanInfo 文件的 DesignTime 归档,BeanInfo 文件用来告诉交互开发环境 (IDE) 如何显示 Java 组件以及如何让开发人员根据应用程序自定义它们。 

      c:\jdk1.2\jre 

      JDK 开发工具所使用的 Java 运行时环境的根目录。运行时环境是 Java 1.2 平台的实现。除了文档外,它与可部署的 JRE 完全相同。 

      c:\jdk1.2\jre\bin 

      Java 平台使用的工具和库的可执行文件及 DLL。可执行文件与 /jdk1.2/bin 中的文件相同。java 启动器工具担当应用程序启动器的角色,它替代了与 1.1 版的 JDK 软件一同发行的旧 jre 工具。不必将该目录放在 PATH 环境变量中。 

      c:\jdk1.2\jre\bin\classic 

      包含经典虚拟机使用的 Windows DLL 文件。经典虚拟机是 Java 虚拟机的语言解释器版本。当新的虚拟机可用时,它们的 DLL 将被安装在 jre/bin 的某个新子目录中。 

      c:\jdk1.2\jre\lib 

      Java 运行时环境使用的代码库、属性设置和资源文件。包括: 

      rt.jar -- 自举类(构成 Java 平台核心 API 的 RunTime 类)。 

      i18n.jar -- 字符转换类及其它与国际化和本地化有关的类。 

      除(下面将要阐述的) ext 子目录以外,还有几个资源子目录不在此处说明。 

      c:\jdk1.2\jre\lib\ext 

      Java 平台扩展的缺省安装目录。例如,这是安装时 JavaHelp jar 文件的安装目录。包括: 

iiimp.jar -- 实现 Internet-Intranet 输入方法协议的类,供从使用国际字符集的设备上接收输入的应用程序来使用。 

      c:\jdk1.2\jre\lib\security 

      包含用于安全管理的文件。这些文件包括安全策略 (java.policy) 和安全属性 (java.security) 文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/598399.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Centos7安装单机版Kafka

下载 链接:https://pan.baidu.com/s/1W8lVEF6Y-xlg6zr3l9QAbg?pwdhbkt 提取码:hbkt 上传到服务器/opt目录 安装 # kafka安装目录为 /opt/kafka cd /opt; mkdir kafka; mv kafka_2.13-2.7.0.tgz ./kafka;cd kafka; #解压 tar -zxvf kafka_2.13-2.7.0…

技术再度取得优势,人工智能兴起推动需求,美芯涨价收割市场,收割中国制造?...

独家首发 ------------- 分析机构指出一季度全球存储芯片涨价了15%左右,而近期三星半导体预测全球存储芯片的价格还将继续上涨,预计二季度至少上涨两成,显示出美系芯片在忍受了一年多的亏损之后再度联手涨价。 2022年中国存储芯片取得了重大进…

基于51单片机教室灯光全自动控制设计( proteus仿真+程序+设计报告+原理图+讲解视频)

基于51单片机教室灯光全自动控制设计( proteus仿真程序设计报告原理图讲解视频) 基于51单片机教室灯光全自动控制设计 1. 主要功能:2. 讲解视频:3. 仿真设计4. 程序代码5. 设计报告6. 原理图7. 设计资料内容清单&&下载链接 仿真图pro…

基于Springboot的航班进出港管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的航班进出港管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结…

MySQL一条SQL语句的执行过程

MySQL一条SQL语句的执行过程可以大致分为以下几个步骤: mysq分层架构 为了理解这个问题,先从Mysql的架构说起,对于Mysql来说,大致可以分为3层架构。 网络连接层: 作为客户端和服务端的连接,连接器负责处…

【C语言】——指针八:指针运算笔试题解析

【C语言】——指针八:指针运算笔试题解析 一、题一二、题二三、题三四、题四五、题五六、题六七、题七 一、题一 //程序输出结果是什么 int main() {int a[5] { 1,2,3,4,5 };int* ptr (int*)(&a 1);printf("%d, %d", *(a 1), *(ptr - 1));return…

第7章 数据安全

思维导图 7.1 引言 数据安全包括安全策略和过程的规划、建立与执行,为数据和信息资产提供正确的身份验证、授权、访问和审计。虽然数据安全的详细情况(如哪些数据需要保护)因行业和国家有所不同,但是数据安全实践的目标是相同的,即根据隐私和…

Azkaban集群模式部署详细教程

序言 Azkaban是一个用于工作流程调度和任务调度的开源工具,它可以帮助用户轻松地管理和监控复杂的工作流程。Azkaban的架构设计旨在提供高度可扩展性和可靠性,同时保持易用性和灵活性。 Azkaban的架构可以分为三个主要组件:Executor、Web Server和db数据…

ES11 学习

文章目录 1. Promise.allSettled2. Module 新增2.1 ! 动态导入 import()2.2 import.meta2.3 export * as obj from module 3. 字符串 matchAll()4. BigInt实际开发相关使用 5. globalThis6. 空值合并运算符7. 可选链操作符 1. Promise.allSettled Promise.allSettled() 返回一个…

mac如何检测移动硬盘 mac硬盘检测工具 Tuxera怎么用 Tuxera NTFS官网

在工作学习中,我们都绕不开用移动硬盘来拷贝存储一些文件。但是在使用过程中,我们经常遇到“mac检测不到移动硬盘”“移动硬盘不存在”等问题,今天本文就带大家了解下mac如何检测移动硬盘,mac硬盘检测工具。 一、mac如何检测移动…

Linux:五种IO模型的基本认识

文章目录 IO的本质五种IO模型异步和同步 阻塞IO非阻塞IO信号驱动IO IO的本质 在之前的内容中已经结束了对于网络和操作系统的学习,那么回过来再继续看IO,什么是IO呢? 对于网络的学习当中,实际上也是一种IO,数据从计算…

micropython控制esp32上的LED闪烁

ESP32电路图 部分PCB原理图: https://doc.itprojects.cn/0006.zhishi.esp32/01.download/esp32_Schematic%20Prints.pdf GPIO2输出高低电平,控制LED。下面是控制LED灯闪烁的代码。 import machine import time pin2 machine.Pin(2, machine.Pin.OUT) while True:…