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

Android-使用Multidexlist转换类进行调试-Instagram JSON解析器

郎祯
2023-03-14

我正在尝试编译和部署我的Android应用程序,但是我遇到了一个multidex问题:

Error:Execution failed for task ':app:transformClassesWithMultidexlistForDebug'.
> java.lang.UnsupportedOperationException (no error message)
dexOptions {
    javaMaxHeapSize "4g"
    preDexLibraries = false
}

3.在Android Studio设置中关闭即时运行

4、重启Android Studio和电脑。

5.清理重建工程。

这是我的卷宗

buildscript {
    repositories {
        mavenCentral()
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'realm-android'

android {
    compileSdkVersion 23
    buildToolsVersion '24.0.1'

    defaultConfig {
        applicationId "com.X.Y"
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 90
        versionName "1.2.3"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    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'
    }
}

repositories {
    jcenter()
    maven { url 'https://maven.fabric.io/public' }
    maven { url 'https://dl.bintray.com/X/maven/' }
    maven { url "https://jitpack.io" }
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:appcompat-v7:23.0.1'
    // Utils
    //ANR Helper & Memory Leaks helper
    //compile 'com.github.anrwatchdog:anrwatchdog:1.1.+'
    //compile 'com.squareup.leakcanary:leakcanary-android:1.4-beta2'
    // HoneyWell sdk
    compile files('libs/honeywell.jar')
    // RealmAdapter
    compile 'io.realm:android-adapters:1.2.1'
    // Volley
    compile 'com.mcxiaoke.volley:library:1.0.19'
    // EventBus
    //    compile 'org.greenrobot:eventbus:3.0.0'
    // Gson
    compile 'com.google.code.gson:gson:2.3.1'
    // Jjp
    compile 'com.instagram:ig-json-parser-processor:0.0.6+'
    // Sticky List headers
    compile 'se.emilsjolander:stickylistheaders:2.7.0'
    // Parallax
    compile 'com.github.nirhart:parallaxscroll:1.0'
    // Facebook
    compile 'com.facebook.android:facebook-android-sdk:4.6.0'
    // Zbar
    compile 'me.dm7.barcodescanner:zbar:1.9'
    // NumberProgressBar
    compile 'com.daimajia.numberprogressbar:library:1.2@aar'
    // AutoFitTextView
    compile 'me.grantland:autofittextview:0.2.+'
    // RoundedImageView
    compile 'com.makeramen:roundedimageview:2.2.0'
    // UpdateChecker
    compile 'com.github.rampo.updatechecker:library:2.1.8'
    // UniversalImageLoader
    compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'
    // GifDrawable
    compile 'pl.droidsonroids.gif:android-gif-drawable:1.1.+'
    // PieChart
    compile 'com.github.PhilJay:MPAndroidChart:v2.2.4'
    compile 'com.android.support:support-v13:+'
    compile('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') {
        transitive = true;
    }
    //AndroidSlidingUpPanel
    compile 'com.sothree.slidinguppanel:library:3.3.0'
    // YPL
    compile 'com.X:Xandroidlibrary:1.4.0'
    compile project(':kdcreader')
}

这里是Gradle控制台

正在执行任务:[:App:AssembleDebug]

失败:生成失败,出现异常。

>

  • 错误:任务“:app:TransformClassesWithMultiDexListForDebug”执行失败。

    java.lang.UnsupportedOperationException(无错误消息)

    谢谢你的帮助!

  • 共有1个答案

    方野
    2023-03-14

    我也有同样的问题。在我的应用程序中,我正在使用番石榴重试库,它正在获取谷歌番石榴库第21版。Guava Version21需要JDK1.8而不提供后援移植支持,在我的例子中,这导致了这个错误。

    我可以通过包含Guava-Retring库来解决这个问题,以便它使用guava库的19.0版本:

    compile ("com.github.rholder:guava-retrying:2.0.0") {
        exclude group: 'com.google.guava', module: 'guava'
    }
    compile 'com.google.guava:guava:19.0'
    
     类似资料:
    • 我的项目工作正常,直到我添加了Facebook依赖。我已经开始得到这个错误。我看过很多问题,这个问题似乎与MultiDex有关。但没有一个办法对我有用 即使在我删除了我添加的内容之后,它仍然会显示出来,而且gradle在构建时似乎比平时花费了很多时间 这是我的身材。格拉德尔

    • 使用ByteBuddy,我可以通过调用另一个实例方法并转换结果来实现一个实例方法吗? 例如(玩具): 鉴于上述情况,我能否实现,以便它调用并返回返回字符串的长度?也就是说,好像它是: 我天真地尝试了以下方法: 然而,看起来我的想法是错误的,;它看起来像是在生成的实例上调用的。 我还试过一个拦截器: 与: 这运行了,但产生了毫无意义的结果,在中设置断点和/或添加打印语句表明它永远不会被调用;所以很明

    • 问题内容: 是一个浮动字段。所提到的索引在elasticsearch中不存在。当使用运行配置文件时,我没有例外。但是,elasticsearch中反映和输入的数据显示了as 的映射。我该如何纠正?以及如何针对多个字段执行此操作? 问题答案: 你有两个问题。首先,您的grok过滤器会在csv过滤器之前列出,并且由于应用了过滤器是为了在应用grok过滤器时不会出现要转换的“基本”字段。 其次,除非您明

    • 我想将XMl转换为另一种XMl格式。假设我在ats中有一个逻辑。埃姆沃。使改变TransformXml java文件如何集成以在camel上下文输入中转换tis(file:///d:/in)是xml文件,我想将其另存为xml。我已经将此文件作为bean类添加到camel

    • 我现在正在使用最新的Android架构组件,尤其是ViewModel和LiveData。 我遇到的情况是,这里建议的SingleLiveEvent是相关的,即我返回一个错误,我只想显示一次警报。在向活动发送值之前,我需要将错误映射到视图中更合适的对象。我使用了一个转换来实现这一点。 最后,我有一个ViewModel,看起来像: 在我的存储库中,我使用的是SingleLive事件: 这很有效,但我注

    • 我正在尝试使用JOLT(使用NiFi JoltTransformJson处理器)将JSON转换为不同的格式。对于单个JSON记录,正在使用的JOLT在JOLT应用程序演示中运行良好,而如果我使用多个JSON记录执行,那么我在JOLT应用程序演示中没有得到预期的输出。有人能告诉我在JOLT规范中需要做哪些额外的更改来处理多个JSON记录吗? 示例输入json JOLT使用: 预期输出JSON: