Java運行環境概述
JRE 是運行 Java 程序的最低的標准 Java 平台。它包含 Java 虛擬機 (JVM)、Java核心類和支持文件。使用 ''java'' 工具從命令行調用 JRE(參見下一節)。使用 -cp 選項指定應用程序的類路徑。JRE 包括所有不可調試的 .so 文件以及來自 1.2.2 的支持純運行時程序所必
需的類。JRE 不包含任何僅屬於一個開發系統的開發工具(如 appletviewer 或 javac) 和類。
在本文檔中,“供應商”這個詞是指獲得許可的人、開發商和獨立的軟件供應商(ISV),他們用自己的 Java 程序發放 JRE 的使用許可和分發 JRE。供應商必須遵守 JRE 二進制代碼許可協議的條款,其中包括:
1. 不得分發 JRE 的必需文件和目錄的子集。您只能忽略下列作為可選項列出的文件。
2. 將 JRE 二進制代碼許可協議包含在您的產品許可條款中。
供應商還應意識到與 JRE 相關的支持條件。有關信息:
http://www.java.sun.com/solaris/java/support.html
Java Runtime
jre 命令對 JRE 1.2 來講已過時,已與 java 命令合並。仍然使用的唯一的環境變量是CLASSPATH,現在可以使用 java 命令的 -classpath 和 -cp 選項覆蓋這個變量。JRE中過去用來預先考慮系統類路徑的 -cp 選項,現在等同於新的 java 命令中的classpath。
這個 java 命令調用 Java Runtime 來執行 Java 應用程序。該命令在 JRE 的 Solaris
SPARC(tm) 和 Solaris Intel 下載軟件包中可用。這個 java 命令的語法如下:
java [ threads-flag ] [ options ] class [ argument ... ]
java [ threads-flag ] [ options ] -jar file.jar [ argument ... ]
類名參數是要執行的類文件名稱。將傳遞給類的參數放在命令行的類名之後。使用 -cp選項指定應用程序的類路徑。
這個 java 命令的選項如下(來自 java.1 man 頁):
-classpath classpath
-cp classpath
指定用於搜索類文件的目錄、JAR 歸檔文件和 ZIP 歸檔文件的列表。 類路徑中的項用冒號 ( 隔開。指定 -classpath 或-cp 覆蓋 CLASSPATH 環境變量的任何設置。
用於 java 時,-classpath 或 -cp 只是為用戶類指定類。用於oldjava 時,-classpath 或 -cp 為用戶類和引導類指定類。
如果未使用 -classpath 和 -cp,也沒有設置 CLASSPATH, 則用戶類路徑由當前目錄 (.) 構成。
有關類路徑的詳細信息,請參見“設置類路徑”。
-debug 該選項已由 -Xdebug 代替。
-Dproperty=value設置一個系統屬性值。
-jar 執行一個 JAR 歸檔文件中封裝的程序。
第一個參數是一個 JAR文件的名稱,而不是一個啟動類的名稱。為了使該選項有效,JAR
文件清單中必須包含一行 Main-Class:classname 這樣的格式。
這裡 classname 標識擁有 public static void main(String[] args) 方法的類,該類作為您的應用程序的啟點提供服務。有關使用 Jar 文件和 Jar 文件清單的信息,請參見 Jar 工具參考頁以及“Java 教程”的 Jar 線索。使用該選項時,JAR 文件是所有用戶類的源,其它用戶類路徑設置將被忽略。
第一個參數是一個 JAR文件的名稱,而不是一個啟動類的名稱。為了使該選項有效,JAR
文件清單中必須包含一行 Main-Class:classname 這樣的格式。
這裡 classname 標識擁有 public static void main(String[] args) 方法的類,該類作為您的應用程序的啟點提供服務。有關使用 Jar 文件和 Jar 文件清單的信息,請參見 Jar 工具參考頁以及“Java 教程”的 Jar 線索。使用該選項時,JAR 文件是所有用戶類的源,其它用戶類路徑設置將被忽略。
oldjava 工具不支持 -jar 選項。
-noclassgc 該選項已由 -Xnoclassgc 代替。
-ossn 該選項已由 -Xossn 代替。
-msh 該選項已由 -Xmsn 代替。
-mxn 該選項已由 -Xmxn 代替。
-ssn 該選項已由 -Xssn 代替。
-t 該選項已由 -Xt 代替。
-tm 該選項已由 -Xtm 代替。
-verbose
-verbose:class
顯示有關每個所加載的類的信息。
-verbosegc 該選項已由 -verbose:gc 代替。
-verbose:gc 報告每個垃圾收集事件。
-verbose:jni 報告有關本機方法和其它 Java 本機接口活動的使用情況。
-version 顯示版本信息並退出。
-?
-help
顯示用法信息並退出。
-X 顯示有關非標准選項的信息並退出。
-Xbootclasspath:bootclasspath 指定一個用來搜索引導類文件的目錄、JAR 歸檔文件和 ZIP 歸檔文件的列表,用冒號分隔。這些用於取代 JDK 1.2 軟件中所包含的引導類文件。
-Xdebug 在啟用調試程序的前提下啟動。Java 解釋器打印輸出一個用於jdb(1) 的口令。詳細信息和一個示例,請參考對 jdb(1) 的描述。
-Xcheck:jni 對 Java 本機接口函數執行額外的檢查。
-Xmaxjitcodesize 為 JIT 代碼區指定最大大小(以字節為單位)。
-Xnoclassgc 禁用類垃圾收集
-Xmsn 指定內存分配池的初始大小。該值必須大於 1000。若要用 1000 乘以該值,請加上字母 k。若要用 1 百萬乘以該值,請加上字母m。默認值為 1m。
-Xmxn 指定內存分配池的最大大小。該值必須大於 1000。若要用 1000 乘以該值,請加上字母 k。若要用 1 百萬乘以該值,請加上字母m。默認值為 16m。
-Xossn 每個 Java 線程都有兩個堆棧:一個用於 Java 代碼,一個用於C 代碼。-Xoss 選項將一個線程中 Java 代碼可以使用的最大堆
棧大小設為 n。在傳遞給 java 的程序的執行過程中產生的每個線程,將 n 作為其 Java 堆棧大小。n 的默認單位是字節,且n 必須大於 1000 字節。若要修改 n 的含義,請加上字母 k 表示千字節,或字母 m 表示兆字節。默認的堆棧大小是 400 千字節 (-Xoss400k)。
-Xrunhprof[:help][:suboption=value,...]
啟用 cpu、heap 或 monitor 配置文件。該選項後面一般都帶一個用逗號分隔的 suboption=value 數對的列表。執行命令 java -Xrunhprof:help 來獲得子選項及其默認值的列表。
-Xprof[:file] 啟用配置文件。如果沒有指定文件,則將結果寫入當前目錄中的java.prof。
-Xssn 每個 Java 線程都有兩個堆棧:一個用於 Java 代碼,一個用於C 代碼。-Xss 選項將一個線程中C 代碼可以使用的最大堆棧大
小設為 n。在傳遞給 java 的程序的執行過程中產生的每個線程,將 n 作為其 Java 堆棧大小。n 的默認單位是字節,且 n 必須大於 1000 字節。若要修改 n 的含義,請加上字母 k 表示千字節,或字母 m 表示兆字節。默認的堆棧大小是128 千字節(-Xss128k)。
-Xrs 減少操作系統信號的使用。
-Xsqnopause 在 siqquit 上不暫停等待用戶的交互操作。
-Xt 開啟指令跟蹤。