当前位置: 首页 > 知识库问答 >
问题:

仅在API 22或lollipop中未在path:DexPathList上找到类XXXX

韦阳晖
2023-03-14

几天来我一直有个问题。当我在运行Android lollipop的设备中运行我的项目时,会抛出这个错误,但在Android6或更高版本中,不会发生这种情况。

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.0"
    defaultConfig {
    applicationId "com.example.dell.sportspicken"
    minSdkVersion 21
    targetSdkVersion 25
    versionCode 1
    multiDexEnabled true
    versionName "1.0"

   testInstrumentationRunner"android.support.test.runner.AndroidJUnitRunner"
    vectorDrawables.useSupportLibrary = true
    ndk {
        //abiFilter "armeabi-v7a"
    }
}
packagingOptions {
    exclude 'META-INF/DEPENDENCIES.txt'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/notice.txt'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/dependencies.txt'
    exclude 'META-INF/LGPL2.1'

    exclude 'META-INF/ASL2.0'
    exclude "builddef.lst"
    exclude "isoparser-default.properties"
    exclude "version.txt"

}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
dexOptions {
    incremental true
}
compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
}
}

repositories {
    jcenter()
    mavenCentral()
    maven { url "https://dl.bintray.com/hani-momanii/maven" }
    maven { url 'https://maven.google.com' }
    maven { url "https://dl.bintray.com/drummer-aidan/maven" }
    maven { url "https://jitpack.io" }
    maven { url  "https://dl.bintray.com/qiscustech/maven" }
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile project(':ffmpeg4android_lib')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', 
{
    exclude group: 'com.android.support', module: 'support-annotations'
    exclude group: 'com.google.android.gms', module: 'play-services-base'
    exclude group: 'com.google.android.gms', module: 'play-services-maps'
})
compile('io.socket:engine.io-client:1.0.0') {
// excluding org.json which is provided by Android
    exclude group: 'org.json', module: 'json'
}
//compile 'com.github.hani-momanii:SuperNova-Emoji:1.1'
compile 'com.android.support:multidex:1.0.1'
// core and commons
compile 'com.google.android.gms:play-services-gcm:10.2.1'
compile project(path: ':ffmpeg4android_lib')
compile 'com.github.halilozercan:BetterVideoPlayer:1.1.0'
compile 'io.socket:socket.io-client:0.6.3'
compile 'com.loopj.android:android-async-http:1.4.9'
compile 'com.google.android.gms:play-services-base:11.0.4'
compile 'com.google.android.gms:play-services-location:11.0.4'
compile 'com.android.support:multidex:1.0.1'
compile 'com.google.android.gms:play-services-gcm:11.0.4'
compile 'com.github.danylovolokh:hashtag-helper:1.1.0'
compile 'com.scalified:fab:1.1.3'
compile 'com.github.clans:fab:1.6.4'
compile 'com.hendraanggrian:socialview-core:0.16.3'
compile 'com.hendraanggrian:socialview-commons:0.16.3'
compile 'org.apache.commons:commons-io:1.3.2'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'de.hdodenhof:circleimageview:2.1.0'
compile 'com.android.support:appcompat-v7:25.2.0'
compile 'com.android.support:design:25.2.0'
compile 'com.android.support:recyclerview-v7:25.2.0'
compile 'com.android.support:support-v4:25.2.0'
compile 'com.android.support:cardview-v7:25.2.0'
compile 'com.github.whalemare:sheetmenu:1.3.3'
compile 'com.davemorrissey.labs:subsampling-scale-image-view:3.6.0'
compile 'com.github.zomato:androidphotofilters:1.0.1'
compile 'com.google.android.gms:play-services-places:11.0.4'
compile 'hanks.xyz:smallbang-library:0.1.2'
compile 'org.ocpsoft.prettytime:prettytime:4.0.1.Final'
compile 'net.ypresto.androidtranscoder:android-transcoder:0.2.0'
compile 'com.github.danylovolokh:video-player-manager:0.2.0'
compile 'com.google.android.gms:play-services-auth:11.0.4'
compile 'com.android.support:support-v4:25.+'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.google.code.gson:gson:2.4'
compile 'com.tuyenmonkey:mkloader:1.3.0'
compile 'de.codecrafters.tableview:tableview:2.6.0'
compile 'com.github.aakira:expandable-layout:1.6.0@aar'
compile 'com.cleveroad:adaptivetablelayout:1.0.1'
compile 'com.github.nkzawa:socket.io-client:0.3.0'
compile 'com.github.mukeshsolanki:photofilter:1.0.2'
compile 'jp.wasabeef:blurry:2.0.2'
compile 'com.github.chathuralakmal:AndroidImagePopup:1.0.9'
compile 'com.yovenny.VideoCompress:videocompress:1.0.0'
compile 'com.facebook.fresco:fresco:1.4.0'
compile 'com.iceteck.silicompressorr:silicompressor:2.0'
compile 'com.nex3z:notification-badge:0.2.0'
compile 'com.steelkiwi:badge-holder-view:1.1.0'
compile 'me.relex:photodraweeview:1.1.3'
compile 'com.github.danylovolokh:list-visibility-utils:0.2.0'
compile 'com.yqritc:android-scalablevideoview:1.0.4'
compile 'hani.momanii.supernova_emoji_library:supernova-emoji-library:0.0.2'
compile 'com.google.android.gms:play-services-plus:11.0.4'
compile 'com.github.andyxialm:ColorDialog:1.0.0'
compile 'id.zelory:compressor:2.1.0'
compile 'com.theartofdev.edmodo:android-image-cropper:2.4.+'
compile 'com.afollestad:material-camera:0.4.4'
compile 'org.apache.commons:commons-lang3:3.0'
compile 'io.viper:io.viper:8'
compile 'org.json:json:20151123'
compile 'com.chauthai.overscroll:overscroll-bouncy:0.1.1'
compile 'com.googlecode.ez-vcard:ez-vcard:0.10.3'
//File picker
compile 'com.qiscus.utils:jupuk:1.0.1'
//glide

//compile group: 'com.github.bumptech.glide', name: 'glide', version: '3.8.0'

//Image loader
compile 'com.qiscus.nirmana:nirmana:1.0.0'
//contador
compile 'com.github.iwgang:countdownview:2.1.6'
// animators
compile 'jp.wasabeef:recyclerview-animators:2.2.7'
testCompile 'junit:junit:4.12'
}

configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
    def requested = details.requested
    if (requested.group == 'com.android.support') {
        if (!requested.name.startsWith("multidex")) {
            details.useVersion '25.3.0'
        }
    }
}
}

共有1个答案

慕晨
2023-03-14

有关问题的描述和解决方案,请参阅这篇Android developer文章:

当为一个multidex应用程序构建每个DEX文件时,构建工具会执行复杂的决策,以确定主DEX文件中需要哪些类,以便您的应用程序能够成功启动。如果启动过程中所需的任何类没有在主DEX文件中提供,那么应用程序将崩溃,出现错误java.lang.NoClassDefoundError

对于直接从应用程序代码访问的代码来说,这种情况不应该发生,因为构建工具可以识别这些代码路径,但是当代码路径不太可见时,比如当您使用的库具有复杂的依赖关系时,这种情况就可能发生。例如,如果代码使用本机代码中的Java方法的内省或调用,那么在主DEX文件中可能无法按要求识别这些类。

 类似资料:
  • 我已经通过Git导入了一个JavaProject。在下一步中,我想测试一个简单的Hello-World-Program。 如果我在Package-Explorer中右键单击Test.java并执行“运行Java应用程序”,它说: Fehler:Hauptklasse测试konnte nicht gefunden Order geladen werden[错误:找不到或加载主类测试。 有没有像Ant

  • 我在Mac上使用了蝗虫1.4.2,当我使用时,我得到了这个错误

  • 我见过类似的问题,但都与maven有关(我没有使用maven)。我在运行intellij并拥有Junit。jar 4.12已添加到库中。我可以创建测试方法和类。 问题是,当我尝试运行TestRunner()main方法时,立即出现以下错误 代码如下所示: 让我困惑的是,我在eclipse中使用了完全相同的代码(用于之前的项目测试),并且在那里工作得非常好。我错过了什么? 关闭和重新启动intell

  • 我有一个与package2有依赖关系的package1。 下面是包2的pom.xml 在pom.xml包1中 运行和后,包2的jar文件存在于~/。m2/存储库和包1能够找到它。但是,在包1中,当我尝试导入时 没有找到包,但令人惊讶的是IntelliJ能够在com下找到类。公司数据 例如,IntelliJ发现了com。公司数据A和com。公司数据B,但不是com。公司数据,我很困惑。

  • 我正面临以下错误。 “错误:无法在Eclipse中找到或加载主类WebLogic.Server”。 我想这就是为什么它找不到类。如何设置正确的类路径。尝试在weblogic管理控制台中搜索设置类路径。但找不到。 任何帮助都将非常感谢!!…提前谢谢你。