Java虛擬機幾個命令行參數(shù)說明
一、運行class文件
執(zhí)行帶main方法的class文件,Java虛擬機命令參數(shù)行為:
java <CLASS文件名>
注意:CLASS文件名不要帶文件后綴.class
例如:
java Test
如果執(zhí)行的class文件是帶包的,即在類文件中使用了:
package <包名>
那應該在包的基路徑下執(zhí)行,Java虛擬機命令行參數(shù):
java <包名>.CLASS文件名
例如:
PackageTest.java中,其包名為:com.ee2ee.test,對應的語句為:
package com.ee2ee.test;
PackageTest.java及編譯后的class文件PackageTest.class的存放目錄如下:
classes
|__com
|__ee2ee
|__test
|__PackageTest.java
|__PackageTest.class
要運行PackageTest.class,應在classes目錄下執(zhí)行:
java com.ee2ee.test.PackageTest
二、運行jar文件中的class
原理和運行class文件一樣,只需加上參數(shù)-cp <jar文件名>即可。
例如:執(zhí)行test.jar中的類com.ee2ee.test.PackageTest,命令行如下:
java -cp test.jar com.ee2ee.test.PackageTest
三、顯示jdk版本信息
當一臺機器上有多個jdk版本時,需要知道當前使用的是那個版本的jdk,使用參數(shù)-version即可知道其版本,命令行為:
java -version
四、增加虛擬機可以使用的最大內(nèi)存
Java虛擬機可使用的最大內(nèi)存是有限制的,缺省值通常為64MB或128MB。
如果一個應用程序為了提高性能而把數(shù)據(jù)加載內(nèi)存中而占用較大的內(nèi)存,比如超過了默認的最大值128MB,需要加大java虛擬機可使用的最大內(nèi)存,否則會出現(xiàn)Out of Memory(系統(tǒng)內(nèi)存不足)的異常。啟動java時,需要使用如下兩個參數(shù):
-Xms java虛擬機初始化時使用的內(nèi)存大小
-Xmx java虛擬機可以使用的最大內(nèi)存
以上兩個命令行參數(shù)中設置的size,可以帶單位,例如:256m表示256MB
舉例說明:
java -Xms128m -Xmx256m ...
表示Java虛擬機初始化時使用的內(nèi)存為128MB,可使用的最大內(nèi)存為256MB。
對于tomcat,可以修改其腳本catalina.sh(unix平臺)或catalina.bat(windows平臺),設置變量JAVA_OPTS即可,例如:
JAVA_OPTS='-Xms128m -Xmx256m'
【編輯推薦】