【发布时间】:2018-06-22 11:49:11
【问题描述】:
自从我将 CognitoAuth 更新到 v2.6.13 后,我就遇到了 gradle 的编译问题。这只发生在发布版本中。
认知库
'com.amazonaws:aws-android-sdk-cognitoauth:2.6.13'
我收到的错误如下:
警告:处理任务 java.io.IOException 时出现异常:不能 写 [C:\JAVASDK\AndroidStudio\AS_Workspace\example.android\app\build\intermediates\transforms\proguard\tech\release\0.jar] (看不懂 [C:\Users\jeff.gradle\caches\transforms-1\files-1.1\aws-android-sdk-cognitoauth-2.6.13.aar\cc705c348189e750e6a133ffd448563c\jars\classes.jar(;;;;;;** 。班级)] (重复的 zip 条目 [classes.jar:com/amazonaws/cognito/clientcontext/datacollection/BuildDataCollector.class]))
从研究来看,我似乎需要排除一些东西,但我不知道是什么。我错过了什么?这是否更像是一个 proguard 问题,因为这只会在发布版本中失败?
编辑
apply plugin: 'com.android.library'
// top-level build file to help synchronize library versions
ext {
supportLib = "25.3.1"
googleLib = "11.6.0"
amazonLib = "2.6.3"
}
allprojects {
repositories {
maven { url 'https://maven.fabric.io/public' }
maven { url 'https://zendesk.jfrog.io/zendesk/repo' }
maven { url 'https://jitpack.io' }
jcenter()
google()
}
}
android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
// construct version name
def versionMajor = 2
def versionMinor = 0
def versionPatch = 0
defaultConfig {
minSdkVersion 16
targetSdkVersion 26
versionName "${versionMajor}.${versionMinor}.${versionPatch}"
versionCode 1
}
buildTypes {
debug {
buildConfigField "String", "FEATURES", "\"Device Utilities, "Google Service APIs, TextToSpeech\""
manifestPlaceholders = [build_version: "${versionMajor}.${versionMinor}.${versionPatch}"]
// debuggable
debuggable true
}
stage {
buildConfigField "String", "FEATURES", "\"Device Utilities, "Google Service APIs, TextToSpeech\""
manifestPlaceholders = [build_version: "${versionMajor}.${versionMinor}.${versionPatch}"]
// debuggable
debuggable true
}
release {
buildConfigField "String", "FEATURES", "\"Device Utilities, "Google Service APIs, TextToSpeech\""
manifestPlaceholders = [build_version: "${versionMajor}.${versionMinor}.${versionPatch}"]
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dependencies {
api files('libs/volley.jar')
// okhttp for requests
// gson library
api 'com.google.code.gson:gson:2.8.0'
// mixpanel
api 'com.mixpanel.android:mixpanel-android:5.2.1'
// google play services
api "com.google.android.gms:play-services:${googleLib}"
// android support libraries
api 'com.android.support:multidex:1.0.2'
api "com.android.support:support-annotations:${supportLib}"
//noinspection GradleCompatible
api "com.android.support:cardview-v7:${supportLib}"
//noinspection GradleCompatible
api "com.android.support:appcompat-v7:${supportLib}"
//noinspection GradleCompatible
api "com.android.support:recyclerview-v7:${supportLib}"
//noinspection GradleCompatible
api "com.android.support:design:${supportLib}"
//noinspection GradleCompatible
api "com.android.support:appcompat-v7:${supportLib}"
//noinspection GradleCompatible
api "com.android.support:customtabs:${supportLib}"
// amazon libraries
api "com.amazonaws:aws-android-sdk-cognito:${amazonLib}"
api "com.amazonaws:aws-android-sdk-cognitoidentityprovider:${amazonLib}"
api 'com.amazonaws:aws-android-sdk-cognitoauth:2.6.13'
// unit testing dependencies
testApi 'junit:junit:4.12'
// set this dependency if you want to use Mockito
testApi 'org.mockito:mockito-core:2.7.22'
// set this dependency if you want to use Hamcrest matching
androidTestApi 'org.hamcrest:hamcrest-library:1.3'
}
}
【问题讨论】:
-
你能发布你的 build.gradle 文件的依赖部分的 sn-p 吗?你的依赖项中有
aws-android-sdk-cognitoauth和aws-android-sdk-cognitoidentityprovider吗? -
@Karthikeyan 我为你发布了整个 gradle 文件
-
感谢发布 build.gradle。我们现在意识到了这个问题,当我在最新版本中包含 cognitoauth 和 cognitoidentityprovider 时,我能够重现它。我们正在调查它,我们将尽快解决这个问题。问题解决后,我们将在此处更新您,然后您可以将两个库都包含在最新版本中而不会出现任何问题。感谢您的耐心等待,对于给您带来的不便,我们深表歉意。
-
我们已经在 v2.6.14 中修复了这个问题。您可以尝试将这两个 SDK 都升级到 2.6.14 吗?
标签: android amazon-web-services android-gradle-plugin