JAVA基礎系列:JDK目錄結構


0. 名詞解釋

SDK: Softeare Development Kit,用於開發JavaEE,包括JDK。

JDK: Java Development Kit,java開發工具包,包括Java編譯器(javac)、jre(java運行時環境)、java 類庫。

JRE: Java Runtime Environment, Java運行時環境,包括JVM和其他環境支持(類加載器、字節碼校驗器、大量的基礎類庫)。

JVM: Java Virtual Machine,Java虛擬機。

如果開發,下載JDK即可,包括了JRE,不需要另外下載。

如果僅運行,下載JRE即可,包括了JVM。

JVM不提供單獨下載。

1. JDK目錄結構

  bin: 該路徑下存放了JDK的各種命令,常用的javac、java等。

  include: 一些平台特定的頭文件,支持Java本地接口和Java虛擬機調試程序接口的本地編程技術。

  jre: 運行java程序所必須的JRE環境

  libJDK工具命令的實際執行程序,bin路徑下的絕大部分命令都是包裝了tools.jar如(lib->tools.jar->sun\tools\javac\Main.class  javac命令的實際執行類;bin下的javac.exe命令實際上僅僅包裝了這個Java類)。

  javafx-src.zip:Java FX所有核心類庫的源代碼,JavaFX它是一種聲明式、靜態類型編程語言。(jdk1.8下新加的)。

  src.zipJava所有核心類庫的源代碼

COPYRIGHT和LICENSE為版權和簽證的說明性文檔。

2. bin目錄

 

1. 監控 

  jps:JVM Process Status Tool顯示指定系統內所有正在運行的HotSpot虛擬機進程,包括進程ID,進程啟動的路徑及啟動參數等等。

  jstat:JVM Statistics Monitoring Tool 用於監視虛擬機運行時狀態信息的命令,它可以顯示出虛擬機進程中的類裝載、內存、垃圾收集、JIT編譯等運行數據

類的加載及卸載情況
查看新生代、老生代及持久代的容量及使用情況
查看新生代、老生代及持久代的垃圾收集情況,包括垃圾回收的次數及垃圾回收所占用的時間
查看新生代中Eden區及Survior區中容量及分配情況等

  jinfo:Configuration Info for java 實時查看和調整虛擬機運行參數

  jmap:Memory Map for Java 生產虛擬機的內存轉儲快照(heapdump文件)

  jhat:JVM Heap Dump Browaser ,用於離線分析heapdump文件,他會建立一個HTTP/HTML服務器,讓用戶可以在瀏覽器上查看分析的結果

  jstack:Stack Trace for java 顯示虛擬機的線程快照  

  jcmd:一個多功能的工具,可以用它來導出堆、查看Java進程、導出線程信息、執行GC、還可以進行采樣分析(jmc 工具的飛行記錄器)。

  jconsole:一個java GUI監視工具,用來監控VM,並可監控遠程的VM。

  jstatd基於RMI(Remove Method Invocation)的服務程序,它用於監控基於HotSpot的JVM中資源的創建及銷毀,並且提供了一個遠程接口允許遠程的監控工具連接到本地的JVM執行命令。

2. 常用

  appletviewel(小程序瀏覽器):一種執行HTML文件上的Java小程序類的Java瀏覽器;
  javadoc:根據Java源代碼及其說明語句生成的HTML文檔;
  jdbJava調試器,可以逐行地執行程序、設置斷點和檢查變量;
  javah產生可以調用Java過程的C過程,或建立能被Java程序調用的C過程的頭文件;
  javap:Java反匯編器,顯示編譯類文件中的可訪問功能和數據,同時顯示字節代碼含義;
  javacJava編譯器,將Java源代碼換成字節代;
  javaJava解釋器,直接從類文件執行Java應用程序代碼;

  jar:多用途的存檔及壓縮工具,是個java應用程序,可將多個文件合並為單個JAR歸檔文件。

3. 遠程調用

  rmic:為遠程調用編譯生成遠程調用時所需的文件 
  rmid:用於啟動激活系統守護進程,以便遠程對象可以在JVM中注冊和激活 
  rmiregistry啟動一個遠程對象注冊表中指定的端口 

4. Web Service

  wsgen:是一個命令行功能用來生成合適的JAX-WS。它讀取WebService的終端類文件,同時生成所有用於WebService發布的源代碼文件和經過編譯過的二進制類文 件。它還隨意生成WSDL和符合規范的HelloServer類WebService。wsgen從資源文件生成一個完整的操作列表是合法的。 
  wsimport:這個工具依據wsdl文件生成相應的類文件,然后用這些類文件,就可以像調用本地的類一樣調用WebService提供的方法了  

5. 壓縮

  pack200:對jar文件進行高效的壓縮 

  unpack200:對pack200進行壓縮的jar文件進行解壓 

6. 其他

   extcheck:檢測目標 jar 文件與當前安裝方式擴展 jar 文件間的版本沖突。 
   idlj對idl文件進行解析,生成所需的java文件 
   jarsigner:為 Java 歸檔 (JAR) 文件產生 簽名,並校驗已簽名的 JAR 文件的簽名 
   jrunscript:一個 JS解釋器 
   keytool:是 安全鑰匙與證書的管理工具,它管理一個存儲了私有鑰匙和驗證相應公共鑰匙的與它們相關聯的X.509 證書鏈的keystore 
   native2ascii:用於 轉換字符或者文件的編碼格式,將含有不是Unicode或Latinl字符的的文件轉換為Unicode編碼字符的文件。
   orbd:用於實現 corba接口(分布式應用) 
  packager: 將Jar文件包裝成其他格式的文件 
   policytool:java中的 策略管理 
   serialver:用於 返回一個類的serialverUID 
   servertools:為程序員提供了一個 命令行接口,用於注冊,取消注冊,啟動,關閉一個服務  
  

學習網址

  1. jvm系列(四):jvm調優-命令大全(jps jstat jmap jhat jstack jinfo)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM