我包括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似乎已經解決了你的問題,所以我沒有理由補充說明。祝你好運。 –