![](/img/trans.png)
[英]Getting a class not found exception / noclassdeffound error on some Android devices
[英]Android class not found when running on some devices but not on others
當我在某些設備(例如平板電腦)上運行我的應用程序時,它運行正常,沒有崩潰。
但是,當我嘗試在手機上運行它時,出現錯誤,提示找不到類定義。
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:300)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
Caused by: java.lang.NoClassDefFoundError: org.apache.commons.io.output.StringBuilderWriter
這是gradle文件中的依賴項
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile project(':volley')
compile files('libs/commons-io-2.4.jar')
compile 'com.android.support:appcompat-v7:25.0.0'
compile 'com.android.support:design:25.0.0'
compile 'com.android.support:support-v4:25.0.0'
compile 'com.android.support:recyclerview-v7:25.0.0'
}
jar
在lib
文件夾中。
Android版本: Phone: 4.4.2
Tablet: 5.1.1
SDK設置: compileSdkVersion: 25
targetSdkVersion: 24
minSdkVersion: 15
targetSdkVersion: 24
有人有什么想法嗎?
有人有任何想法嗎
您應該將apache commons直接添加到您的項目中:
compile "commons-io:commons-io:2.5"
原來真正的問題在於multiDexing
我將此添加到defaultConfig
:
defaultConfig {
multiDexEnabled true
}
並將其包含到我的dependencies
:
dependencies {
compile 'com.android.support:multidex:1.0.1'
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.