出現這類錯誤提示:'JavaPackage' object is not callable,能夠看下所引用的jar包或者class文件是否在java的路徑搜索範圍內java
命令行模式下:javac能夠編譯*.java爲*.class字節碼;而後使用java執行字節碼linux
java -helpspa
-cp <目錄和 zip/jar 文件的類搜索路徑>
-classpath <目錄和 zip/jar 文件的類搜索路徑>
用 : 分隔的目錄, JAR 檔案和 ZIP 檔案列表, 用於搜索類文件。命令行
javac -helpcode
-classpath <路徑> 指定查找用戶類文件和註釋處理程序的位置
-cp <路徑> 指定查找用戶類文件和註釋處理程序的位置ip
可見當在編譯或者運行時,須要使用其餘的jar包等,須要使用參數-cp或者-classpathci
拋出第二個問題,如何一次引用多個jar包呢?it
字節碼文件mypackage.class
io
linux下:冒號編譯
java -cp myjar.jar:lib/*:. mypackage
錯誤方式:java -cp myjar.jar:lib/*.jar:. mypackage
java -cp "Test.jar:lib/*" mypackage
window下:分號
java -cp myjar.jar;lib/*;. mypackage
java -cp "Test.jar;lib/*" mypackage
或者使用:tr命令的做用是從標準輸入中替換、縮減和/或刪除字符,並將結果寫到標準輸出。
java -cp $(echo lib/*.jar | tr ' ' ':')
參考:
一、https://stackoverflow.com/questions/13018100/execute-jar-file-with-multiple-classpath-libraries-from-command-prompt
二、https://stackoverflow.com/questions/219585/including-all-the-jars-in-a-directory-within-the-java-classpath