1. 程式人生 > >java jre、jdk、server jre

java jre、jdk、server jre

JRE(Java Runtime Enviroment)是Java的執行環境。面向Java程式的使用者,而不是開發者。JRE是執行Java程式所必須環境的集合,包含JVM標準實現及 Java核心類庫。它包括Java虛擬機器、Java平臺核心類和支援檔案。它不包含開發工具(編譯器、偵錯程式等)。

JDK(Java Development Kit)又稱J2SDK(Java2 Software Development Kit),是Java開發工具包,它提供了Java的開發環境(提供了編譯器javac等工具,用於將java檔案編譯為class檔案)和執行環境(提 供了JVM和Runtime輔助包,用於解析class檔案使其得到執行)。如果你下載並安裝了JDK,那麼你不僅可以開發Java程式,也同時擁有了運 行Java程式的平臺。JDK是整個Java的核心,包括了Java執行環境(JRE),

一堆Java工具tools.jar和Java標準類庫 (rt.jar)。

server jre和jre 轉自  http://www.oracle.com/technetwork/java/javase/downloads/index.html
Software Developers: JDK (Java SE Development Kit). For Java Developers. Includes a complete JRE plus tools for developing, debugging, and monitoring Java applications. Administrators running applications on a server: Server JRE
(Server Java Runtime Environment) For deploying Java applications on servers. Includes tools for JVM monitoring and tools commonly required for server applications, but does not include browser integration (the Java plug-in), auto-update, nor an installer. Learn more End user running Java on a desktop: JRE:
(Java Runtime Environment). Covers most end-users needs. Contains everything required to run Java applications on your system.


轉自

https://blog.csdn.net/hanghangde/article/details/50609074

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) 檔案。 

      附加檔案和目錄 

      本節說明演示程式、Java 原始碼和 C 標頭檔案的目錄結構。下面是目錄結構: 

                   jdk1.2 
      __________ _____|_____ _____________ 
     |          |           |             | 
   src.jar    demo       include     include-old 
             ___|___ 
            |       | 
          applets  jfc 
                    | 
                  Java2D     
  
      以上所顯示的附加目錄為: 

      c:\jdk1.2\demo 
      含有原始碼的程式示例,用於顯示如何為 Java 平臺程式設計。 
      c:\jdk1.2\demo\applets 
      可用在網頁上的 applet。 
      c:\jdk1.2\demo\jfc 
      使用新 JFC\Swing 元件的示例。 
      c:\jdk1.2\demo\jfc\Java2D 
      使用新 Java 2D 圖形的示例。 
      c:\jdk1.2\include 
      C 語言標頭檔案,它支援使用 Java 本地介面 [ web]和 Java 虛擬機器除錯程式介面 [ web] 的原生代碼程式設計技術。 
      c:\jdk1.2\include-old 

      標頭檔案,支援使用舊介面的原生代碼程式設計技術。提供這些標頭檔案只是為了向後相容。所有 Java 虛擬機器都不推薦、不支援也不提供這些介面。 


JDK中bin目錄下常用命令註釋

 

HtmlConverter.exe 用法:HtmlConverter [-option1 value1 [-option2 value2 [...]]] [-simulate]  [filespecs] 其中,選項包括:    -source:     獲取原始檔的路徑。 預設值: <userdir>
   -dest:      寫入已轉換檔案的路徑。 預設值: <userdir>
   -backup:    寫備份檔案的路徑。 預設值: <dirname>_BAK
   -f:         強制覆寫備份檔案。
   -subdirs:   應處理子目錄中的檔案。
   -template:  模板檔案的路徑。 如果不確定,請使用預設值。
   -log:       寫日誌的路徑。 如果沒有提供,則不會寫入任何日誌。
   -progress:  轉換時顯示進度。 預設值: true
   -simulate:  在沒有進行轉換時顯示特定於轉換的資訊。
   -latest:    使用最新的 JRE 支援發行版 mimetype。
   -gui:       顯示轉換程式的圖形使用者介面。
   filespecs:   用空格分開的檔案說明列表。  預設值: "*.html *.htm" (需要引號)

 

 javap

rmic

功能說明:為遠端物件生成 stub 和 skeleton。

語法:rmic [ options ] package-qualified-class-name(s) 

rmid

功能說明:啟動啟用系統守護程序,以便能夠在 Java 虛擬機器上註冊和啟用物件。

語法:rmid [-port port] [-log dir]

 用法:rmid <option>

rmiregistry

功能說明:命令可在當前主機的指定埠上啟動遠端物件註冊服務程式。

  用法: rmiregistry <選項> <埠>

serialver

功能說明:命令返回 serialVersionUID。

語法:serialver [ 命令選項 ]

jarsigner

功能說明:為Java歸檔 (JAR) 檔案產生簽名,並校驗已簽名的 JAR 檔案的簽名。

用法:jarsigner [options] jar-file alias
     jarsigner -verify [options] jar-file

 [-keystore <url>]           keystore location  [-storepass <password>]     password for keystore integrity  [-storetype <type>]         keystore type  [-keypass <password>]       password for private key (if different)  [-sigfile <file>]           name of .SF/.DSA file  [-signedjar <file>]         name of signed JAR file  [-verify]                   verify a signed JAR file  [-verbose]                  verbose output when signing/verifying  [-certs]                    display certificates when verbose and verifying  [-internalsf]               include the .SF file inside the signature block  [-sectionsonly]             don't compute hash of entire manifest  [-provider]                 name of cryptographic service provider's master class file
 ...

keytool

功能說明:管理由私鑰和認證相關公鑰的 X.509 證書鏈組成的金鑰倉庫(資料庫),還管理來自可信任實體的證書

 keytool 用法:

-certreq     [-v] [-alias <alias>] [-sigalg <sigalg>]
    [-file <csr_file>] [-keypass <keypass>]
    [-keystore <keystore>] [-storepass <storepass>]
    [-storetype <storetype>] [-provider <provider_class_name>] ...
-delete      [-v] -alias <alias>
    [-keystore <keystore>] [-storepass <storepass>]
    [-storetype <storetype>] [-provider <provider_class_name>] ...
-export      [-v] [-rfc] [-alias <alias>] [-file <cert_file>]
    [-keystore <keystore>] [-storepass <storepass>]
    [-storetype <storetype>] [-provider <provider_class_name>] ...
-genkey      [-v] [-alias <alias>] [-keyalg <keyalg>]
    [-keysize <keysize>] [-sigalg <sigalg>]
    [-dname <dname>] [-validity <valDays>]
    [-keypass <keypass>] [-keystore <keystore>]
    [-storepass <storepass>] [-storetype <storetype>]
    [-provider <provider_class_name>] ...
-help -identitydb  [-v] [-file <idb_file>] [-keystore <keystore>]
    [-storepass <storepass>] [-storetype <storetype>]
-import      [-v] [-noprompt] [-trustcacerts] [-alias <alias>]
    [-file <cert_file>] [-keypass <keypass>]
    [-keystore <keystore>] [-storepass <storepass>]
    [-storetype <storetype>] [-provider <provider_class_name>] ...
-keyclone    [-v] [-alias <alias>] -dest <dest_alias>
    [-keypass <keypass>] [-new <new_keypass>]
    [-keystore <keystore>] [-storepass <storepass>]
    [-storetype <storetype>] [-provider <provider_class_name>] ...
-keypasswd   [-v] [-alias <alias>]
    [-keypass <old_keypass>] [-new <new_keypass>]
    [-keystore <keystore>] [-storepass <storepass>]
    [-storetype <storetype>] [-provider <provider_class_name>] ...
-list        [-v | -rfc] [-alias <alias>]
    [-keystore <keystore>] [-storepass <storepass>]
    [-storetype <storetype>] [-provider <provider_class_name>] ...
-printcert   [-v] [-file <cert_file>] -selfcert    [-v] [-alias <alias>] [-sigalg <sigalg>]
    [-dname <dname>] [-validity <valDays>]
    [-keypass <keypass>] [-keystore <keystore>]
    [-storepass <storepass>] [-storetype <storetype>]
    [-provider <provider_class_name>] ...

-storepasswd [-v] [-new <new_storepass>]
    [-keystore <keystore>] [-storepass <storepass>]
    [-storetype <storetype>] [-provider <provider_class_name>] ...

native2ascii

功能說明:將含有本地編碼字元(既非 Latin1 又非 Unicode 字元)的檔案轉換為 Unicode 編碼字元的檔案。

語法:native2ascii [options] [inputfile [outputfile]]

範例
aaa.txt檔案內容包括:中國
native2ascii aaa.txt bbb.txt
執行後變為:/u4e2d/u56fd

aaa.txt檔案內容包括:/u4e2d/u56fd
native2ascii -reverse aaa.txt bbb.txt
執行後變為:中國

appletviewer

功能說明:Java applet 瀏覽器。appletviewer 命令可在脫離全球資訊網瀏覽器環境的情況下執行 applet

語法:appletviewer [ threads flag ] [ 命令選項 ] urls ...

extcheck

功能說明:extcheck 檢測目標 jar 檔案與當前安裝方式擴充套件 jar 檔案間的版本衝突

語法:extcheck [ -verbose ] targetfile.jar

  壓縮程式Jar.exe
    
壓縮程式jar.exe的功能是把多個檔案以zip格式壓縮到一個副檔名為jar的檔案中,這樣可以保持程式的完整性並便於使用。它也可以用來解壓縮jar檔案中的檔案,但是好象不如用壓縮工具Winzip WinRAR來得方便。

    jar 檔案主要有以下三個用途:
    1. 
一個應用程式包含許多類檔案,壓縮到一個 jar 檔案中,執行時用 java -jar XXX.jar 命令。避免檔案一多互相混雜不容易管理。  
    2. 
一個 Applet 程式包含許多類檔案,壓縮到一個 jar 檔案中,執行時一次裝載,避免多次裝載提高執行效率。  
    3. 
把類庫壓縮到 jar 檔案中,使用起來更方便。例如 java 2 的類庫都在 tools.jar 檔案中,該檔案在 jdk/lib 目錄中。 swing 類在 dt.jar 檔案中。但是需要把 tools.jar dt.jar 加入到類庫路徑 CLASSPATH 中。  
    
使用命令 C:/javacode/zcb>jar  可在 DOS 螢幕上輸出 jar.exe 的用法和選項如下:
    
用法: jar {ctxu}[vfm0M] [jar- 檔案 ] [manifest- 檔案 ] [-C  目錄 檔名  ...
    
命令中的檔名可以是用空格分隔的多個檔案。選項:
-c 
建立新的歸檔
-t 
列出歸檔內容的列表
-x 
展開歸檔中的命名的(或所有的)檔案
-u 
更新已存在的歸檔
-v 
生成詳細輸出到標準輸出上
-f 
指定歸檔檔名
-m 
包含來自指定的清單( manifest )檔案的清單( manifest )資訊
-0 
只儲存方式;未用 ZIP 壓縮格式
-M 
不產生所有項的清單( manifest )檔案
-i 
為指定的 jar 檔案產生索引資訊
-C 
改變到指定的目錄,並且包含下列檔案:
    
如果一個檔名是一個目錄,它將被遞迴處理。
    
清單( manifest )檔名和歸檔檔名都需要被指定,按 'm'   'f' 標誌指定的相同順序。      示例 1 :將兩個 class 檔案歸檔到一個名為  'classes.jar'  的歸檔檔案中:
    jar cvf classes.jar Foo.class Bar.class
    
示例 2 :用一個存在的清單( manifest )檔案  'mymanifest'   foo/  目錄下的所有檔案歸檔到一個名為  'classes.jar'  的歸檔檔案中:
    jar cvfm classes.jar mymanifest -C foo/ 
    
示例 3 :從 classes.jar 檔案中還原檔案 Foo.class
    jar xf classes.jar Foo.class
    
示例 4 :還原 classes.jar 檔案中的所有檔案
    jar xf classes.jar 
    
注意,用 jar xf classes.jar *.*(or *.class. xxx.* etc.)  都是錯誤的。但壓縮時可以使用萬用字元,下類命令是正確的:
    jar cf classes.jar -C foo/ *.*
    
它把目錄 foo 中的所有檔案都壓縮到 classes.jar 中。

 

  執行程式java.exe
    
執行程式java.exe解釋性地把位元組碼檔案*.class翻譯成所在機器的可執行程式碼並執行之。它的最簡單的用法是:java <類檔名> <CR>
    
運行當前目錄中的類檔案XXX.class,副檔名不能加。如果不是當前目錄中而是帶路徑的檔名,那麼在程式包含多個類時會發生某某類找不到的異常。執行程式java.exe的一般使用格式為:
    java [
選項] <類檔名> [命令列引數CR>
    
包含多個類的程式也可以把多個檔案壓縮到一個jar檔案中,那麼執行命令如下:
    java -jar [
選項] <JAR檔名> [命令列引數CR>

 

文件生成器 javadoc
    
參考文件生成器 javadoc.exe 的用途是從 java 源程式中提取資訊生成 html 格式的軟體參考文件。它最簡單的用法是:
    javadoc FileDownload.java
    
執行後生成檔案 FileDownload.html 和其他相關檔案。
    
點選這裡觀看這個檔案的內容。
    java.doc
的用法和選項列表如下。
    
用法: javadoc [options] [packagenames] [sourcefiles] [@files]
-overview <file>    
讀取  HTML  格式的概述文件
-public    
僅顯示  public  類和成員
-protected   
顯示  protected/public  類和成員(預設)
-package     
顯示  package/protected/public  類和成員
-private     
顯示所有類和成員
-help        
顯示命令列選項
-doclet <class>     
通過候選  doclet  生成輸出
-docletpath <path>     
指定  doclet  類檔案的查詢位置
-1.1    
利用  JDK 1.1  模仿  doclet  生成輸出
-sourcepath <pathlist>    
指定原始檔的查詢位置
-classpath <pathlist>     
指定使用者類檔案的查詢位置
-bootclass path <pathlist>     
覆蓋自舉類載入器所載入的 類檔案的位置
-extdirs <dirlist> 
覆蓋已安裝的擴充套件的位置
-verbose     
有關  Javadoc  所做工作的輸出資訊
-locale <name>     
所用的  Locale ,例如  en_US   en_US_WIN
-encoding <name> 
原始檔編碼名稱
-J<flag>     
 <flag>  直接傳給執行時系統

 

     由標準  doclet  提供:
-d <directory> 
輸出檔案的目標目錄
-use    
建立類和包的用法頁
-version 
包含  @version 
-author  
包含  @author 
-splitindex 
將索引分為每個字母對應一個檔案  
-windowtitle <text> 
文件的瀏覽器視窗標題
-doctitle <html-code>    
包含包索引頁(首頁)的標題
-header <html-code> 
包含每一頁的頁首文字
-footer <html-code> 
包含每一頁的頁尾文字
-bottom <html-code> 
包含每一頁的頁底文字
-link <url> 
建立到  javadoc  輸出的連結(位於  <url>
-linkoffline <url> <url2> 
利用位於  <url2>  的包列表連結到位於  <url>  的文件
-group <name> <p1>:<p2>.. 
將概覽頁中指定的包分組
-nodeprecated 
不包含  @deprecated  資訊
-nodeprecatedlist 
不生成不鼓勵使用的列表
-notree 
不生成類層次
-noindex 
不生成索引
-nohelp 
不生成幫助連結
-nonavbar 
不生成導航欄
-helpfile <file> 
包含幫助連結功能連結到目標的檔案
-stylesheetfile <path> 
改變所生成文件的樣式的檔案
-docencoding <name> 
輸出編碼名稱
    
示例 下列命令生成的就是從上面的超鏈中看到的檔案。
    javadoc -private -d F:/SHPS3688/webSchool/JavaTouturial -author -splitindex -windowtitle FileDownload.java
程式的參考文件 FileDownload.java      請讀者自行解釋這個命令的完整含義。
    javadoc
能夠提取有 /** ... */ 括起來的註釋文字作為 HTML 文件的正文內容。因此 java /** /* 兩種註釋標記。值得一提的是,在 /** ... */ 中的註釋內容可以包含 HTML 標記文字, javadoc 提取 HTML 標記送到生成的文件中。用這種方法可以控制生成文件的正文的顯示格式。例如下面這一段:
/**
您可以插入一個 <b> 專案列表 </b>
* <ol>
* <li> 
專案一
* <li> 
專案二
* <li> 
專案三
* </ol>
*/
    
可以生成一個專案列表。注意在文件註釋中,位於一行最開頭的星號會被 javadoc 丟棄。同時丟棄的還有前導空格。 javadoc 會對所有內容進行格式化,使其與標準的文件外觀相符。不要將 <h1> <hr> 這樣的標題當作嵌入 HTML 使用,因為 javadoc 會插入自己的標題,我們給出的標題會與之衝突。所有型別的註釋文件 —— 類、變數和方法 —— 都支援嵌入 HTML
    javadoc
還會提取一些以 “@” 開頭的 文件標記 Doc tags ),置於註釋行的起始處(但前導的 “*” 會被忽略)。比如您需要提取 @authod 標記,在命令列選項中需要加入 -authod 選項。下面給出各種 @ 標記和它的含義。
@see 
引用其他類
    
類、方法和變數三種類型的註釋文件都可包含 @see 標記,它允許我們引用其他類裡的文件。對於這個標記, javadoc 會生成相應的 HTML ,將其直接連結到其他文件。格式如下:
@see 
類名
@see 
完整類名
@see 
完整類名 # 方法名
    
每一格式都會在生成的文件裡自動加入一個超連結的 “See Also” 條目。注意 javadoc 不會檢查我們指定的超連結是否有效。      類文件標記
    
隨同嵌入 HTML @see 引用,類文件還可以包括用於版本資訊以及作者姓名的標記。類文件亦可用於 介面 目的。
    1. @version
    
格式如下:
    @version 
版本資訊
    
其中, 版本資訊 代表任何適合作為版本說明的資料。若在 javadoc 命令列使用了 “-version” 標記,就會從生成的 HTML 文件裡提取出版本資訊。
    2. @author
    
格式如下:
    @author 
作者資訊
    
其中, 作者資訊 包括您的姓名、電子函件地址或者其他任何適宜的資料。若在 javadoc 命令列使用了 “-author” 標記,就會專門從生成的 HTML 文件裡提取出作者資訊。
    
可為一系列作者使用多個這樣的標記,但它們必須連續放置。全部作者資訊會一起存入最終 HTML 程式碼的單獨一個段落裡。
    
變數文件標記  
    
變數文件只能包括嵌入的 HTML 以及 @see 引用。
    
方法文件標記 除嵌入 HTML @see 引用之外,方法還允許使用針對引數、返回值以及違例的文件標記。
    1. @param
    
格式如下:
    @param 
引數名 說明
    
其中, 引數名 是指引數列表內的識別符號,而 說明 代表一些可延續到後續行內的說明文字。一旦遇到一個新文件標記,就認為前一個說明結束。可使用任意數量的說明,每個引數一個。
    2. @return
    
格式如下:
    @return 
說明
    
其中, 說明 是指返回值的含義。它可延續到後面的行內。
    3. @exception
    
有關 違例 Exception )的詳細情況,我們會在第 9 章講述。簡言之,它們是一些特殊的物件,若某個方法失敗,就可將它們 扔出 物件。呼叫一個方法時,儘管只有一個違例物件出現,但一些特殊的方法也許能產生任意數量的、不同型別的違例。所有這些違例都需要說明。所以,違例標記的格式如下:
    @exception 
完整類名 說明
其中, 完整類名 明確指定了一個違例類的名字,它是在其他某個地方定義好的。而 說明 (同樣可以延續到下面的行)告訴我們為什麼這種特殊型別的違例會在方法呼叫中出現。
    4. @deprecated 
不提倡使用的方法 警告)
    
這是 Java 1.1 的新特性。該標記用於指出一些舊功能已由改進過的新功能取代。該標記的作用是建議使用者不必再使用一種特定的功能,因為未來改版時可能摒棄這一功能。若將一個方法標記為 @deprecated ,則使用該方法時會收到編譯器的警告
注意,對於類文件標記 @version @authod 需要使用命令列選項才提取,而其他 @ 標記是預設提取的,而用 -nodeprecated 選項禁止提取。

    Applet觀看程式appletviewer.exe
    appletviewer.exe
用來不凱瀏覽器就觀看小程式片。它的簡單用法是
    appletviewer XXX.html
    
其中XXX.html是嵌入了AppletHTML文件,副檔名不能省略。執行後會開啟一個大小等於Applet設定的寬和高的視窗,用來顯示這個Appletappletviewer的用法的一般格式和選項如下:
    appletviewer [-debug] [-J<javaflag>] [-encoding <
編碼型別>] url|file ...
    
其中檔案必須是html檔案,不能是class檔案。javah

功能說明:C 標頭檔案和 Stub 檔案生成器;javah 從 Java 類生成 C 標頭檔案和 C 原始檔;這些檔案提供了連線膠合,使 Java 和 C 程式碼可進行互動

語法:javah [ 命令選項 ] fully-qualified-classname. . .

javah_g [ 命令選項 ] fully-qualified-classname. . .

 

檢視程式 javap.exe
    
程式  javap.exe 的功能是檢視知道類檔案中的所有宣告 —— 類名、構建器和方法名、欄位(變數)。最簡單的用法是 javap < 類檔名 > <CR>
    
執行後顯示類檔案中的包和類的所有宣告,但不包含方法體。不帶選項的命令不顯示用 private 修飾的宣告。 javap 命令的一般格式為: javap [ 選項 ] < 類檔名 > CR>
    
檔名中不能加副檔名。可能的選項及其意義如下。
-b Backward compatibility with javap in JDK 1.1
-c Disassemble the code
-classpath <pathlist> Specify where to find user class files
-extdirs <dirs> Override location of installed extensions
-help Print this usage message
-J<flag> Pass <flag> directly to the runtime system
-l Print line number and local variable tables
-public Show only public classes and members
-protected Show protected/public classes and members
-package Show package/protected/public classes and members (default)
-private Show all classes and members
-s Print internal type signatures
(簽名)
-bootclasspath <pathlist> Override location of class files loaded by the bootstrap class loader
-verbose Print stack size, number of locals and args for met hods If verifying, print reasons for failure
    
選項 -package 是預設的,它顯示 package/protected/public 的類,不顯示 private 的,用 -private 選項可顯示所有的。

 

     對第 15 章的例 6 使用下列命令
    C:/javacode/zcb/ch15>javap FileDownload
    
輸出結果如下:
Compiled from FileDownload.java
public class FileDownload extends javax.swing.JFrame implements java.awt.event.A
ctionListener {
 java.lang.String url;
 javax.swing.JTextField tUrl;
 MyPanel mp;
 javax.swing.JButton bt;
 public FileDownload();
 public void actionPerformed(java.awt.event.ActionEvent);
 static void getDown(java.lang.String);
 public static void main(java.lang.String[]);
}javap FileDownload
    
上述命令這顯示 public 類,不顯示處在同一檔案中的非 public 類。如果要求一起檢視,可在命令列中加入多個檔名。如: javap FileDownload MyPanel <CR>

jdb

jdb 是一個簡單的命令列的錯誤除錯程式,用於Java class檔案

用法:jdb <options> <class> <arguments>

orbd

orbd 用在 CORBA 環境中,使客戶端能透明地定位和呼叫伺服器的永久物件

用法:orbd <選項>

tnameserv

tnameserv 啟動 Java IDL 名稱伺服器

servertool

servertool 為應用程式註冊,取消註冊, 啟動和停止伺服器提供了方便的介面

 

idlj

idlj 從已給的IDL檔案中生成Java的聯編檔案

policytool

policytool 圖形化的建立和管理策略(policy)檔案

 javah.exe   

用法:javah [options] <classes> 其中 [options] 包括: -help                  列印該幫助資訊
-classpath <path>     類的載入路徑
-bootclasspath <path> 自舉類的載入路徑
-d <dir>              輸出目錄
-o <file>             輸出檔案(僅能使用 -d 或 -o 之一)
-jni                  生成 JNI 風格的標頭檔案(預設)
-old                  生成 JDK1.0 風格的標頭檔案
-stubs                生成 stubs 檔案
-version              列印版本資訊
-verbose              輸出有關本命令所做工作的資訊
-force             始終寫輸出檔案

指定 <classes> 時必須使用全名(例如 java.lang.Object)

 

idlj.exe com.sun.tools.corba.se.idl.InvalidArgument: No IDL file was specified. Compiler Usage:    java com.sun.tools.corba.se.idl.toJavaPortable.Compile [options] <idl file> where <idl file> is the name of a file containing IDL definitions, and
[options] is any combination of the options listed below.  The options
are optional and may appear in any order; <idl file> is required and
must appear last.
Options:
-d <symbol>               This is equivalent to the following line in an
                         IDL  #define <symbol>
-emitAll                  Emit all types, including those found in #included files.
-f<side>                  Define what bindings to emit.  <side> is one of client,
                         server, all, serverTIE, allTIE.  serverTIE and allTIE
                         cause delegate model skeletons to be emitted.  If this
                         flag is not used, -fclient is assumed.
-i <include path>         By default, the current directory is scanned for
                         included files.  This option adds another directory.
-keep                     If a file to be generated already exists, do not
                         overwrite it.  By default it is overwritten.
-noWarn                   Suppress warnings.
-oldImplBase              Generate skeletons compatible with old (pre-1.4) JDK ORBs.
-pkgPrefix <t> <prefix>   When the type or module name <t> is encountered at
                         file scope, begin the Java package name for all files
                         generated for <t> with <prefix>.
-pkgTranslate <t> <pkg>   When the type or module name <t> in encountered, replace
                         it with <pkg> in the generated java package.  Note that
                         pkgPrefix changes are made first.  <t> must match the
                         full package name exactly.  Also, <t> must not be
                         org, org.omg, or any subpackage of org.omg.
-skeletonName <xxx%yyy>   Name the skeleton according to the pattern.
                         The defaults are:
                         %POA for the POA base class (-fserver or -fall)
                         _%ImplBase for the oldImplBase base class
                         (-oldImplBase and (-fserver or -fall)).
-td <dir>                 use <dir> for the output directory instead of
                         the current directory.
-tieName <xxx%yyy>        Name the tie according to the pattern.  The defaults are:
                         %POATie for the POA tie (-fserverTie or -fallTie)
                         %_Tie for the oldImplBase tie
                         (-oldImplBase and (-fserverTie or -fallTie)).
-v, -verbose              Verbose mode.
-version                  Display the version number and quit.
歡迎使用 Java IDL 伺服器工具
請在提示處輸入命令
servertool > help 可用命令:
-------------------
register     -  註冊一個可啟用的伺服器
unregister   - 取消伺服器註冊
getserverid  - 返回應用程式名稱的伺服器識別符號
list         - 列舉所有已註冊伺服器
listappnames - 列舉當前定義的應用程式名稱
listactive   - 列舉當前活動的伺服器
locate       - 將已註冊伺服器定位在特定型別的埠
locateperorb - 為已註冊伺服器的特定物件請求代理程式定位埠。
orblist      - 物件請求代理程式 (orb) 名稱及其對映列表
shutdown     - 關閉一個已註冊伺服器
startup      - 啟動一個已註冊伺服器
help         - 取得幫助
quit         - 退出此工具
servertool > quit 其中,<選項> 包括:
 -port                  啟動 ORBD 的啟用埠,預設值為 1049 (可選)
 -defaultdb             ORBD 檔案的目錄,預設值為 "./orb.db" (可選)
 -serverid              ORBD 的伺服器識別符號,預設值為 1 (可選)
 -ORBInitialPort        初始埠(必需)
 -ORBInitialHost        初始主機名稱(必需)
where options include:
   -help             print out this message and exit
   -sourcepath <directories separated by ";">
                     directories in which to look for source files
   -attach <address>
                     attach to a running VM at the specified address using standard connector
   -listen <address>
                     wait for a running VM to connect at the specified address using standard connector
   -listenany
                     wait for a running VM to connect at any available address using standard connector
   -launch
                     launch VM immediately instead of waiting for 'run' command
   -connect <connector-name>:<name1>=<value1>,...
                     connect to target VM using named connector with listed argument values
   -dbgtrace [flags] print info for debugging jdb
   -tclient          run the application in the Hotspot(tm) Performance Engine (Client)
   -tserver          run the application in the Hotspot(tm) Performance Engine (Server)
options forwarded to debuggee process:
   -v -verbose[:class|gc|jni]
                     turn on verbose mode
   -D<name>=<value>  set a system property
   -classpath <directories separated by ";">
                     list directories in which to look for classes
   -X<option>        non-standard target VM option
<class> is the name of the class to begin debugging
<arguments> are the arguments passed to the main() method of <class>
For command help type 'help' at jdb prompt     java.exe 可用的選項及其意義如下:
-cp -classpath <directories and zip/jar files separated by ;>    set search path for application classes and resources
-D<name>=<value>     set a system property
-verbose[:class|gc|jni]     enable verbose output
-version     print product version and exit
-showversion     print product version and continue
-? -help     print this help message
-X