2013-10-27 39 views
0

我得到了我今天運行的android maven插件,現在我想在真正的Android設備上調試我的apk。Android Maven Plugin的java.lang.NoClassDefFoundError

當我執行

cd android-proj 
mvn clean install android:redeploy 

,並開始我的設備上的應用程序,我碰到這個錯誤信息蹣跚地在logcat中:

10-27 21:16:08.857: E/AndroidRuntime(14556): java.lang.NoClassDefFoundError: de.dornathal.planyourmeals.android.database.AndroidDBHelper$SQLiteDatabaseAdapter 

但是我搜索的解決方案和跨一些圖書館來了沒有被正確地包括在內可能會導致這個問題。 AndroidDBHelper類不包含在maven pom中的依賴項中,因爲它是'android-proj/android-apk'中的嵌套類。 其中android-proj是Maven有2個模塊apk和核心函數的文件夾。

由於AndroidManifest.xml沒有直接鏈接到AndroidDBHelper,並且AndroidDBHelper是唯一知道SQLiteDatabaseAdapter的類,所以Maven構建的apk必須比僅調用MainActivity至少稍微工作一點。

MFG Dornathal

回答

0

好吧,我發現了,爲什麼我一直有這個問題,併爲大家誰經歷了同樣的事情:

我以爲我會重新部署的東西到我的設備,但實際上它跳過了。 要使用android:deploy或android:redeploy,我必須移動到定義apk的pom的確切文件夾。當我命名兩個文件夾的名稱相同時,我的殼牌並不在正確的位置。

我的樹:

android-app [<--- thats where I was] 
    \--- android-app [<---- thats where I should have been] 
     \---target (with apk) 
    \--- android-app-it (the integration test)