我今天运行了我的android maven插件,现在我想在真正的Android设备上调试我的apk。
执行时
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 :(得分:0)
好的,我发现了为什么我继续遇到这个问题,以及每个经历过同样事情的人:
我以为我要将某些东西重新部署到我的设备上,但实际上它被忽略了。 要使用android:deploy或android:redeploy,我必须移动到定义apk的pom的确切文件夹。由于我将两个文件夹命名为同名,因此我没有使用我的Shell。
我的树:
android-app [<--- thats where I was]
\--- android-app [<---- thats where I should have been]
\---target (with apk)
\--- android-app-it (the integration test)