将项目迁移到 'com.android.tools.build:gradle:3.0.1'
。从那以后我就一直从 gradle 得到这个错误
Exception in thread "main" java.lang.RuntimeException: Method code too large!
at org.objectweb.asm.MethodWriter.a(Unknown Source)
at org.objectweb.asm.ClassWriter.toByteArray(Unknown Source)
at com.google.devtools.build.android.desugar.CoreLibraryRewriter$UnprefixingClassWriter.toByteArray(CoreLibraryRewriter.java:152)
at com.google.devtools.build.android.desugar.Desugar.desugarClassesInInput(Desugar.java:403)
at com.google.devtools.build.android.desugar.Desugar.desugarOneInput(Desugar.java:326)
at com.google.devtools.build.android.desugar.Desugar.desugar(Desugar.java:280)
at com.google.devtools.build.android.desugar.Desugar.main(Desugar.java:584)
FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:transformClassesWithDesugarForDebug'.
我已经多次尝试 Clean Project > Rebuild Project,但没有帮助。
这是我的构建配置:
apply plugin: 'com.android.application'
buildscript {
configurations.classpath.exclude group: 'com.android.tools.external.lombok'
}
android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
flavorDimensions "default"
dexOptions {
preDexLibraries = false
javaMaxHeapSize "4g"
}
defaultConfig {
applicationId "com.example.shirish"
minSdkVersion 15
targetSdkVersion 24
multiDexEnabled true
versionCode 140
versionName "3.30"
vectorDrawables.useSupportLibrary = true
}
lintOptions {
checkReleaseBuilds false
abortOnError false
}
packagingOptions {
exclude 'META-INF/rxjava.properties'
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
buildTypes {
debug {
testCoverageEnabled = false
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
lintOptions {
abortOnError false
}
}
repositories {
maven { url "http://repo.commonsware.com.s3.amazonaws.com" }
maven { url "https://jitpack.io" }
maven { url "http://dl.bintray.com/pixplicity/android" }
maven {
url "http://s3.amazonaws.com/repo.commonsware.com"
}
maven { url 'https://zendesk.jfrog.io/zendesk/repo' }
maven {
url 'https://maven.google.com'
}
}
sourceSets {
main {
java {
exclude 'com/google/gdata/util/common/base/UnicodeEscaper$1.class'
exclude 'com/google/gdata/util/common/base/Escaper.class'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation files('libs/commons-net-3.5.jar')
implementation files('libs/org.apache.http.legacy.jar')
implementation files('libs/PayU-release.jar')
implementation files('libs/YouTubeAndroidPlayerApi.jar')
implementation files('libs/gdata-contacts-3.0.jar')
implementation files('libs/gdata-client-1.0.jar')
implementation files('libs/gdata-core-1.0.jar')
implementation project(path:':beewisesdk', configuration:'default')
implementation('com.google.code.gson:gson:2.8.2') {
exclude group: 'com.google.gdata'
}
implementation('ch.acra:acra:4.7.0') {
exclude group: 'org.json'
}
implementation group: 'com.zendesk', name: 'sdk', version: '1.9.1.1'
implementation 'com.android.support:multidex:1.0.2'
implementation 'com.balysv:material-ripple:1.0.1'
implementation 'de.hdodenhof:circleimageview:2.1.0'
implementation 'com.wang.avi:library:1.0.5'
implementation 'com.google.guava:guava:19.0'
implementation 'com.github.d-max:spots-dialog:0.4@aar'
implementation 'com.iceteck.silicompressorr:silicompressor:1.1.0'
implementation 'id.zelory:compressor:2.1.0'
implementation 'com.github.jakob-grabner:Circle-Progress-View:v1.2.9'
implementation 'com.android.support:recyclerview-v7:26.1.0'
implementation 'com.android.support:cardview-v7:26.1.0'
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
implementation 'com.github.ParkSangGwon:TedPicker:v1.0.10'
implementation 'com.facebook.android:facebook-android-sdk:4.28.0'
implementation 'com.cloudinary:cloudinary-android:1.4.2'
implementation 'com.segment.analytics.android:analytics:4.3.1'
implementation 'com.squareup.picasso:picasso:2.5.2'
implementation 'com.squareup.retrofit2:retrofit:2.3.0'
implementation 'com.squareup:otto:1.3.8'
implementation 'com.jakewharton:butterknife:8.1.0'
implementation 'com.kbeanie:multipicker:1.1.3@aar'
implementation 'com.android.support:support-v4:26.1.0'
implementation 'com.squareup.retrofit2:converter-gson:2.3.0'
implementation 'com.github.delight-im:Android-AdvancedWebView:v3.0.0'
implementation 'com.google.android.gms:play-services-auth:11.4.2'
implementation 'com.google.android.gms:play-services-gcm:11.4.2'
implementation 'com.google.android.gms:play-services-location:11.4.2'
implementation 'com.google.android.gms:play-services-places:11.4.2'
implementation 'com.beardedhen:androidbootstrap:2.3.0'
implementation 'com.webengage:android-sdk:3.1.0'
implementation 'com.google.android.gms:play-services-analytics:11.4.2'
// Google Api Client library and Android extension
implementation ('com.google.api-client:google-api-client:1.23.0') {
exclude group: 'com.google.guava'
}
implementation ('com.google.api-client:google-api-client-android:1.23.0') {
exclude group: 'com.google.guava'
}
//People REST API access
implementation ('com.google.apis:google-api-services-people:v1-rev159-1.23.0') {
exclude group: 'com.google.guava'
}
implementation 'com.droidninja:filepicker:1.0.8'
implementation 'com.razorpay:checkout:1.2.1'
implementation 'com.squareup.okhttp3:logging-interceptor:3.8.1'
implementation 'org.greenrobot:eventbus:3.0.0'
implementation 'com.github.MAXDeliveryNG:slideview:1.0.1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.google.android.gms:play-services-tagmanager:11.4.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.3'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
implementation 'com.jakewharton.rxrelay2:rxrelay:2.0.0'
implementation 'com.jakewharton.rxbinding2:rxbinding:2.0.0'
implementation 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'
implementation 'com.google.firebase:firebase-core:11.4.2'
implementation 'com.google.firebase:firebase-perf:11.4.2'
implementation 'com.annimon:stream:1.1.8'
implementation 'com.google.dagger:dagger:2.8'
implementation 'javax.inject:javax.inject:1'
testImplementation 'junit:junit:4.12'
annotationProcessor 'com.google.dagger:dagger-compiler:2.8'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.1.0'
implementation 'javax.annotation:jsr250-api:1.0'
}
android { sourceSets { main { java.srcDirs = ['src/main/java', 'app/model'] } } }
android { sourceSets { main { res.srcDirs = ['src/main/res', 'src/main/res/xml'] } } }
android {
sourceSets { main { res.srcDirs = ['src/main/res', 'src/main/res/anim'] } }
}
apply plugin: 'com.google.gms.google-services'
如果需要更多详细信息,请告诉我。我已经尝试了关于这个问题的所有 SO 问题,但没有任何效果。需要对这个问题有新的看法。我还在顶级 build.gradle 中包含依赖项
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath 'com.google.gms:google-services:3.1.1'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
此外,在 implementation 'com.android.support:recyclerview-v7:26.1.0'
中,我收到了使用相同版本的警告,正如您在我的 gradle 中看到的,所有支持依赖项是同一个版本。
最佳答案
更新 Gradle 版本:
Android plugin
3.0.0
requiresGradle version 4.1
or higher. If you're opening an existing project usingAndroid Studio 3.0
or later, follow the prompts to automatically update an existing project to the compatible version of Gradle.To update Gradle manually, edit the URL in
gradle-wrapper.properties
to the following:
distributionUrl=\
https\://services.gradle.org/distributions/gradle-4.1-all.zip
应用插件
If you're opening an existing project using
Android Studio 3.0
or later, follow the prompts to automatically update your project to the latest version of the Android plugin. To manually update your project, include the maven repo and change the plugin version in your project-levelbuild.gradle
file as follows:
buildscript {
repositories {
...
// You need to add the following repository to download the
// new plugin.
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
}
检查 Gradle 版本: 文件 > 项目结构 > 项目
同时检查这个:
https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html
关于android - Gradle 3.0 构建错误 : Execution failed for task ':app:transformClassesWithDesugarForDebug' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47865620/