gradle - 使用android gradle插件3.0.0比gradle插件2.3.3慢

标签 gradle plugins

当将com.android.tools.build:gradle:2.2.3更新为com.android.tools.build:gradle:3.0.0时,我发现构建时间长于2.3.3。

build.gradle

buildscript {
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
    }
}
app/build.gradle在这里,我所有的依赖项都使用compile
apply plugin: 'com.android.application'
android {
    sourceSets {
        main {
            ...
        }
    }

    dexOptions {
        preDexLibraries = false
        incremental true
        javaMaxHeapSize "8g"
        keepRuntimeAnnotatedClasses false

    }

    lintOptions {
        abortOnError false
        checkReleaseBuilds false
    }
    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/ASL2.0'
        exclude 'org/apache/commons/codec/language/bm/*.txt'
    }
    compileSdkVersion 24
    buildToolsVersion "27.0.1"
 }
 defaultConfig {
        applicationId "com.gg.kk"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 512654
        versionName "version"
        multiDexEnabled true

}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:multidex:1.0.1'
    .... many dependencies ....
}

谁能告诉我为什么我的构建速度变慢?

最佳答案

许多不同的事情会影响gradle的构建时间。

为了减少此时间,您可能需要尝试以下解决方案中的至少一种:

  • 检查是否启用了Gradle Deamon。默认情况下应启用它。
  • 保持您的Gradle最新(尽管您已经很擅长此事)
    您可以转到/gradle/wrapper/gradle-wrapper.properties并通过更改distributionUrl
  • 升级gradle版本
  • 增加堆大小

    org.gradle.jvmargs = -Xmx3072m -XX:MaxPermSize = 512m -XX:+ HeapDumpOnOutOfMemoryError -Dfile.encoding = UTF-8
  • 通过添加gradle.properties
  • org.gradle.parallel=true中启用并行性
  • 不要使用动态依赖项,如编译'com.android.support:appcompat-v7:27.+'
  • File -> Settings -> Build, Execution, Deployment -> Build Tools -> Gradle检查'Offline work'短期解决方案下的'Global Gradle settings'
  • 选中此https://developer.android.com/studio/build/optimize-your-build.html
  • 关于gradle - 使用android gradle插件3.0.0比gradle插件2.3.3慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47967847/

    相关文章:

    android - 无法获取类型对象的未知属性 'anko_version'...?

    gradle - 如何在gradle的配置中使用当前版本

    android - 更新 Firebase Crashlytics SDK 时出现问题

    Android Unity 插件 - 未找到类异常

    maven - 为什么使用 Maven 版本插件(版本 :use-latest-versions) not updating/changing -SNAPSHOT version to release (none -SNAPSHOT version)?

    德尔福。如何监控 IE 正在下载的 URL?

    android - 在路径 : DexPathList 上找不到类 "java.lang.Math8"

    android-studio - Android Studio 1.1.0的Gradle同步失败

    javascript - 插件完成ajax调用后将vue绑定(bind)到根元素

    jQuery 从插件中为多个监听器调度事件