一般來說,執行一個java文件采用執行jar包的方式最為方便(java -jar XXX.jar),將所需要的文件全部打到一個jar里,但是有些時候需要執行指定的.class文件才行(各種原因),這個時候就需要我們使用 -classpath 參數來指定類路徑。
windows:
假設要執行的文件為D:\test\Test.class
1.在cmd下進入D盤
2.執行java test.Test 或者 java test/Test 都可以
3.如果Test中關聯了其它jar包,這需要通過如下方式執行,假設jar文件在test\lib下
java -classpath .;lib/* test.Test
說明如下:
注意這里使用了-classpath參數:
"."代表當前路徑,這是java執行時的默認路徑,所以在執行了classpath后需要手工加上這個路徑,否則會提示找不到要執行的類。
";"用來隔開兩個路徑
"lib/*"表示lib下的所有jar文件,如果只使用某一個jar,可以具體指定,如"lib/XX.jar"
linux:
假設要執行的文件為/usr/local/test/Test.class
1.在shell下進入/usr/local
2.執行方式如下
java -classpath . test.Test
說明:linux下執行.class時,需要指定-classpath,這與linux的環境變量設置方式有關,linux不提倡指定".",而windows在設置CLASS_PATH環境變量時一般都加上這個".",這么說明白了吧
3.如果關聯了其它jar文件,執行方式如下
java -classpath .:lib/*
說明:與windows相似,除了分隔符需要使用linux的分隔符":"
總結:
綜上所述,建議在執行java命令時加上-classpath參數