我包括import.io罐子到我的Android项目,试图运行示例,得到如下:如何解决Android中的java.lang.NoClassDefFoundError?
FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: com.importio.api.clientlite.json.JacksonJsonImplementation$1
at com.importio.api.clientlite.json.JacksonJsonImplementation.<init>(JacksonJsonImplementation.java:17)
at com.importio.api.clientlite.ImportIO.connect(ImportIO.java:235)
at com.gomel.data.ImportIOTest.showandgetData(ImportIOTest.java:33)
at com.gomel.activities.DetailedArticleActivity$1.onClick(DetailedArticleActivity.java:40)
at android.view.View.performClick(View.java:4247)
at android.view.View$PerformClick.run(View.java:17733)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5289)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
at dalvik.system.NativeStart.main(Native Method)
我做了谷歌,并决定什么毛病杰克逊库,我已经加了,但什么都没有改变。关于这个错误有很多不同的解决方案,但我无法解决它在我的情况。你能给我一些建议吗?
我使用Android Studio与Android SDK Tools v22.3 另外我试图在eclipse中运行这个项目(显然是jar)并且得到了同样的错误。
UPD
我的build.gradle
apply plugin: 'android'
android {
compileSdkVersion 18
buildToolsVersion '19.0.1'
defaultConfig {
minSdkVersion 14
targetSdkVersion 18
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
} }
dependencies {
compile 'com.android.support:support-v4:18.0.0'
compile files('lib/com.importio.api.clientlite-1.0.2.jar')
compile files('lib/jackson-core-asl-1.9.12.jar') }
我添加它像一个文件相关性,认为这是正确的选择。另外,我不使用这种方法时没有编译错误。当然这个罐子在lib
文件夹中。
你可以分享你的项目的设置,以及如何导入jar放到你的模块。你在使用Gradle吗?如果这样共享gradle构建文件。 –
@AssafG。是的,我使用Gradle,并且只是添加了一些设置图片。你知道发生了什么问题吗? – pavelartlover
@Ashish似乎已经解决了你的问题,所以我没有理由补充说明。祝你好运。 –