2012-04-24 73 views
0

我有一個學期長的項目,我一直在與四人小組在Android上工作。這是明天到期的。我打算在Android上使用JDBC,但遇到了我以前見過的一個難題。無論我做什麼,我的Android 都不會識別外部參照。一段時間我通過將源代碼複製到我的項目中來避免了這個問題。Android項目將無法使用外部JAR或項目參考

但是,使用JDBC,我需要一個JAR驅動程序才能連接到MySQL數據庫。所以,你知道,我通過添加JAR:

  1. 創建文件夾
  2. 導入JAR到該文件夾​​
  3. 添加在Android項目的JAR的構建路徑。

我也嘗試通過將它添加到BuildPath來添加一個外部Java項目。沒有編譯錯誤,但在我的(冰淇淋三明治)手機上執行代碼時,出現ClassNotFound錯誤。該項目是在Android 2.2。我聽說做一個Android庫項目將解決這個問題,但我對這個解決方案不感興趣,因爲它在我的情況下擊敗了項目引用的目的。

與JDBC驅動程序,下面的RuntimeException被拋出在我這裏的項目:

private final static String driver = "com.mysql.jdbc.Driver"; 
private final static String userName = "sqluser"; 
private final static String passwd = "sqlpw"; 

public Query() { 
    try { 
     Class.forName(driver); 
    } catch (ClassNotFoundException e) { 
//   System.err 
//     .println("error in DB connection: can not find the DB driver"); 
     throw new RuntimeException("Driver not found"); 
    } 

的代碼工作正常,作爲一個Java應用程序。

任何有效的解決方案將不勝感激。由於該項目明天到期,因此它不一定是最優雅的方法。另外(不是那麼重要),我的項目通過SubClipse連接到SVN存儲庫。提前致謝!

回答

0

我不確定將哪個文件夾放入JAR中,但對於android項目,您必須將它們放入文件夾「libs」中。

+0

我的錯誤現在是一個併發修改異常,這意味着我能夠連接到數據庫!這樣一個愚蠢的錯誤,我把它們放在一個名爲「lib」的文件夾中。非常感謝你!我的夜晚得救了! – 2012-04-24 03:30:03