簡體   English   中英

NoClassDefFoundError:javax.xml.bind.DatatypeConverter

[英]NoClassDefFoundError: javax.xml.bind.DatatypeConverter

我在Android應用程序中使用Amazon的Java SDK與SimpleDB進行通信。 我將sdk添加到gradle文件中,它一直運行,直到調用DatatypeConverter.printBase64Binary並且我收到以下錯誤:

java.lang.NoClassDefFoundError: javax.xml.bind.DatatypeConverter
        at com.amazonaws.util.Base64.encodeAsString(Base64.java:36)
        at com.amazonaws.auth.AbstractAWSSigner.signAndBase64Encode(AbstractAWSSigner.java:69)

不應該自動包含javax庫,或者至少在aws構建中包含javax庫?

這是我的gradle文件,以防這有助於:

buildscript {
repositories {
    mavenCentral()
    maven { url 'https://maven.fabric.io/public' }
}
dependencies {
    classpath 'com.android.tools.build:gradle:1.1.2'
    classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

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

dependencies {

// Support Libraries
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.android.support:cardview-v7:21.0.3'
compile 'com.android.support:support-annotations:21.0.3'
compile 'com.android.support:support-v4:22.0.0'

compile 'commons-codec:commons-codec:1.5'
compile 'com.amazonaws:aws-java-sdk:1.9.24'
compile 'com.facebook.android:facebook-android-sdk:3.23.1'
compile 'com.github.markushi:android-ui:1.2'
compile 'de.hdodenhof:circleimageview:1.2.2'
compile 'com.afollestad:material-dialogs:0.6.4.5'
compile 'com.android.support:multidex:1.0.0'
compile project(':libraries:MaterialNavigationDrawerModule')
compile('com.crashlytics.sdk.android:crashlytics:2.2.2@aar') {
    transitive = true;
}
}

android {
compileSdkVersion 21
buildToolsVersion "21.1.2"

sourceSets {
    main {
        manifest.srcFile 'AndroidManifest.xml'
        java.srcDirs = ['src']
        resources.srcDirs = ['src']
        aidl.srcDirs = ['src']
        renderscript.srcDirs = ['src']
        res.srcDirs = ['res']
        assets.srcDirs = ['assets']
    }

    instrumentTest.setRoot('tests')

    debug.setRoot('build-types/debug')
    release.setRoot('build-types/release')
}

defaultConfig {
    targetSdkVersion 21
    minSdkVersion 14
    multiDexEnabled true
}

dexOptions {
    javaMaxHeapSize "4g"
}

packagingOptions{
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/NOTICE'
}
}

遺憾的是,包javax.xml.bind。*在android上不可用,所以你不能使用amazon java sdk。

但對於Android你可以使用aws移動SDK,請訪問http://aws.amazon.com/mobile/sdk/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM