2015-04-28 78 views
0

如何在Java中包含所有jar文件?我正在使用命令提示符。使用opencsv writer的Java classpath命令行

我的jar文件存儲在C:\測試\ java中

jarfiles中是:

commons-io.jar, commons-lang.jar, opencsv.jar 

我的java程序也存儲在C:\測試\ java中

我我在谷歌搜索,但似乎我找不到使用類路徑的正確方法。

我目前在C:\測試\ java和使用這個命令

的javac -cp 「公地io.jar;公地lang.jar; opencsv.jar。」 JavaTest.java

而且它編譯成功,但是當我運行java程序使用此行

的Java JavaTest

我在與opencsvWriter一個錯誤。

Exception in thread "main" java.lang.NoclassDefFoundError: au/com/bytecode/opencsv/CSVWriter 

我無法確定類路徑是錯誤的還是作者寫錯了。

提前致謝!

+0

當您嘗試添加相同的-cp在你的javac命令到你的Java命令,會發生什麼? – Harvtronix

+0

WTH!有用!你真棒! – tuturyokgaming

+0

;)很酷。我會讓它成爲一個答案,然後 – Harvtronix

回答

0

javac命令不會將其他庫鏈接到單個可執行文件,而不像c/C++鏈接程序如何使用目標文件。相反,你必須指定在classpath相同的類時,你去運行編譯Java文件:

java -cp ".;commons-io.jar;commons-lang.jar;opencsv.jar;" JavaTest 

你可以任意捆綁的所有文件到一個單一的罐子,然後指定清單內的類路徑文件位於新創建的jar中。

一些額外的閱讀上,在這裏:

Reference jars inside a jar

+0

感謝兄弟。真棒! – tuturyokgaming