尝试在Android Studio

时间:2016-04-07 13:09:33

标签: android noclassdeffounderror

我正在使用FatSecretAPI来从他们的数据库中检索项目。

我已使用此库 - http://ranesr.github.io/fatsecret4j/并完成以下操作:

  1. 在Android Studio中创建一个新模块作为新的Java库
  2. 根据链接
  3. 中提供的结构复制相关的java文件
  4. 找到文件>项目结构......>模块>我的应用>依赖关系并将fatsecret模块添加为依赖
  5. 调用FatSecretAPI类并使用我的两个键实例化:
  6. FatSecretAPI api = new FatSecretAPI("my auth key", "my shared key");

    1. 清理并重建项目。
    2. 运行应用程序并打开此调用所在的活动时,出现以下错误:

      FATAL EXCEPTION: main
              Process: com.example.chris.rapical, PID: 7140
              java.lang.NoClassDefFoundError: Failed resolution of: Lcom/fatsecret/platform/FatSecretAPI;
              at com.example.chris.rapical.FoodSearchOnlineActivity.onCreate(FoodSearchOnlineActivity.java:51)
              at android.app.Activity.performCreate(Activity.java:6500)
              at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1120)
              at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3072)
              at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3218)
              at android.app.ActivityThread.access$1000(ActivityThread.java:198)
              at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1676)
              at android.os.Handler.dispatchMessage(Handler.java:102)
              at android.os.Looper.loop(Looper.java:145)
              at android.app.ActivityThread.main(ActivityThread.java:6837)
              at java.lang.reflect.Method.invoke(Native Method)
              at java.lang.reflect.Method.invoke(Method.java:372)
              at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
              at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
              Caused by: java.lang.ClassNotFoundException: Didn't find class "com.fatsecret.platform.FatSecretAPI" on path: DexPathList[[zip file "/data/app/com.example.chris.rapical-1/base.apk"],nativeLibraryDirectories=[/vendor/lib64, /system/lib64]]
              at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
              at com.example.chris.rapical.FoodSearchOnlineActivity.onCreate(FoodSearchOnlineActivity.java:51) 
              at android.app.Activity.performCreate(Activity.java:6500) 
              at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1120) 
              at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3072) 
              at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3218) 
              at android.app.ActivityThread.access$1000(ActivityThread.java:198) 
              at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1676) 
              at android.os.Handler.dispatchMessage(Handler.java:102) 
              at android.os.Looper.loop(Looper.java:145) 
              at android.app.ActivityThread.main(ActivityThread.java:6837) 
              at java.lang.reflect.Method.invoke(Native Method) 
              at java.lang.reflect.Method.invoke(Method.java:372) 
              at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 
             Suppressed: java.lang.ClassNotFoundException: com.fatsecret.platform.FatSecretAPI
              at java.lang.Class.classForName(Native Method)
              at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
              at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
              ... 15 more
              Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
      
    3. 我尝试过的事情:

      • 清理和重建应用
      • 删除/ class文件夹并重新构建
      • 跑步' gradlew clean'在项目地点的CMD上

      所有3个都没有成功。

1 个答案:

答案 0 :(得分:0)

想出来 - 当我打算创建新模块时,我选择了Java库而不是Android库。咄。