2009-11-21 104 views
3

我有一個jar文件,其中有幾個具有靜態主要方法的類。我可以在命令行的jar中執行它們嗎?如果不是,我可以一個一個執行它們嗎?通過命令行從Jar運行Java類

+0

好嗎?我的答案是否適合你?如果您需要其他解決方案,請提供答案。 – jitter 2009-12-05 15:44:12

+0

我使用intellij mvn exec runner。這工作得很好。所有其他人都沒有在我的情況下工作。 – 2009-12-08 02:16:39

回答

12

的Windows

java -classpath .;path/to/yourlib.jar your.package.path.ClassWithMain 

的Linux(我猜)

java -classpath .:path/to/yourlib.jar your.package.path.ClassWithMain 

或者,如果你不使用包只是做(適用於Windows)

java -classpath .;path/to/yourlib.jar ClassWithMain 
+1

+1但是java -cp path/to/yourlib.jar your.package.path.ClassWithMain也應該工作。這個。如果只有一個類在jar中是多餘的。 – PSpeed 2009-11-21 04:13:07

+0

不應該(或不能)在Windows示例的類路徑中使用反斜槓? – 2009-11-22 01:59:46

+0

Java會很高興地在Windows下使用正斜槓,所以有時候在所有平臺上都可以這麼做。 – PSpeed 2009-11-22 05:38:45

0

如果你不這樣做知道哪個類有靜態主要方法,你可以使用一些java IDE,例如IntelliJ IDEA,它可以用main()方法找到類,然後你可以在你的項目中運行它。