2011-07-16 62 views
0

,所以我有需要的Weka機器,我讓他們既作爲一個學習項目庫(weka.jar)和MySQL JDBC使用mysql-connector-java的5.1.17-bin.jarJDBC不在類路徑錯誤

在我的項目構建路徑的一部分....我還他們兩個加入到我的CLASSPATH環境變量...這樣的項目運行完美,當我使用Eclipse的運行按鈕...

但隨後出口項目爲後一個獨立的jar並運行java -jar theproject.jar命令,它返回一大堆錯誤:

Trying to add database driver (JDBC): RmiJdbc.RJDriver - Error, not in CLASSPATH 
? 
Trying to add database driver (JDBC): jdbc.idbDriver - Error, not in CLASSPATH? 
Trying to add database driver (JDBC): com.mckoi.JDBCDriver - Error, not in CLASS 
PATH? 
Trying to add database driver (JDBC): org.hsqldb.jdbcDriver - Error, not in CLAS 
SPATH? 
java.sql.SQLException: No suitable driver found for jdbc:idb=experiments.prp 
java.lang.IllegalStateException: Not connected, please connect first! 

即使它在Eclipse上,儘管事實上,這兩個weka.jar和MySQL連接器的Java-5.1.17-bin.jar在CLASSPATH環境變量中完美運行...

我做了什麼錯?

+0

您是否將jar作爲可運行JAR從Eclipse導出? – CoolBeans

+0

是的,我做了....... –

+0

正如下面提到的duffymo,檢查你的MANIFEST.MF文件,看看你的類路徑如何。 – CoolBeans

回答

1

你不應該有一個CLASSPATH環境變量。

一獨立的JAR需要一個闡明瞭CLASSPATH清單。這就是JDK正在查看的內容,而不是您的CLASSPATH環境變量。

看看一些教程顯示如何做到這一點。您將立即在Eclipse之外運行它。

http://download.oracle.com/javase/6/docs/technotes/tools/solaris/jar.html

+0

是有一種方法讓eclipse自動執行所有這些操作,這樣我就不必每次修改它時都修改清單..... –

+0

您只寫一次。可能有辦法告訴Eclipse將所有第三方JAR添加到生成的MANIFEST.MF中。我使用InteliJ,所以我不確定。 – duffymo