加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

NoClassDefFoundError使用Jackson 2.2.x在Android上与Gradle

发布时间:2020-12-14 05:43:35 所属栏目:Java 来源:网络整理
导读:对于我的 Android项目,我设置了Gradle with Jackson 2.2.x如下: // build.gradlebuildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.6.+' }}apply plugin: 'android'repositories { mavenCentral(
对于我的 Android项目,我设置了Gradle with Jackson 2.2.x如下:
// build.gradle
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 18
    buildToolsVersion "18.1.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 18
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:18.0.0'
    compile 'com.android.support:support-v4:18.0.0'
    compile 'com.google.android.gms:play-services:3.1.36'
    compile 'com.fasterxml.jackson.core:jackson-databind:2.2.+'
    compile 'com.fasterxml.jackson.core:jackson-core:2.2.+'
    compile 'com.fasterxml.jackson.core:jackson-annotations:2.2.+'
}

我只是在这里使用ObjectMapper:

import com.fasterxml.jackson.databind.ObjectMapper;

// ...

ObjectMapper objectMapper = new ObjectMapper();
try {
    Content content = objectMapper.readValue(inputStream,Content.class);
} catch (IOException e) {
    e.printStackTrace();
}

当我运行gradle installDebug并启动应用程序的相关部分崩溃:

java.lang.NoClassDefFoundError: com.fasterxml.jackson.databind.ObjectMapper

思考:

>我注意到,在build.gradle中定义了com.fasterxml.jackson.core的错误消息中提到了com.fasterxml.jackson ….有不匹配导致问题吗?
>我把这个依赖关系块暂时移动到android块中,因为我found other build.gradle configurations这样结构化了.不过似乎没有什么区别.

解决方法

Gradle和Android并不总是很好地依赖关系(还).运行
gradle clean

似乎为我解决了大多数问题.

注意:如果不行,可以运行

dexdump classes.dex | grep 'Class descriptor'

在APK中的classes.dex文件中.这将检查类是否包含在classes.dex文件中. (有时,如果您想要仔细检查发生的情况,这很有用).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读