为什么app:assembleDebug被调用了两次?

时间:2017-03-22 21:19:05

标签: android android-studio gradle

为什么app:assembleDebug在我的构建过程中被调用了两次?

我的应用程序包含两个模块,即应用程序模块app和库模块commons。当我在Android Studio中单击“运行”以在设备上部署应用程序时,我发现了这种情况:

  • 底栏显示Gradle build using tasks: [:app:assembleDebug, :commons:assembleDebug]。蓝色进度条慢慢填满。 Gradle控制台中没有输出。

  • 在100%进度时,我收到通知Compilation completed succesfully in 3m。好极了!此时我希望安装该应用程序。

  • 酒吧卡在100%。我读了一下executing post-compile tasks,然后是Executing tasks: [:app:assembleDebug]

  • 再次调用
  • :app:assembleDebug并再花费3分钟,而我们则停留在100%。这次Gradle Console记录输出。

  • 已安装该应用。

这是为什么? 不使用即时运行,但同样适用

gradle.properties

org.gradle.jvmargs=-Xmx2560M
org.gradle.parallel=true
org.gradle.configureondemand=true
org.gradle.daemon=true

项目级别build.grade

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.0'
        classpath 'com.google.gms:google-services:3.0.0'
    }
}

allprojects {
    repositories {
        jcenter()
        maven { url "https://oss.sonatype.org/content/repositories/snapshots" }
    }
}

ext {
    compileSdkVersion = 25
    buildToolsVersion = "25.0.2"
    minSdkVersion = 15
    targetSdkVersion = 25
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

app module build.grade

apply plugin: 'com.android.application'

android {
    dexOptions {
        preDexLibraries true
        javaMaxHeapSize "2g"
    }
    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolsVersion

    defaultConfig {
        applicationId "com.package.id"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        versionCode 1
        versionName "1.0"

        signingConfig signingConfigs.release_config
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        vectorDrawables.useSupportLibrary = true
    }

    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
        }
        debug {
            minifyEnabled false
            shrinkResources false
        }
    }
    productFlavors {}
}

dependencies {
    compile 'com.google.maps.android:android-maps-utils:0.4.3'
    compile 'com.google.android.gms:play-services-maps:9.2.1'
    compile 'com.google.android.gms:play-services-appinvite:9.2.1'
    compile 'com.google.android.gms:play-services-location:9.2.1'
    compile 'com.google.android.gms:play-services-appindexing:9.2.1'
    compile 'com.google.android.gms:play-services-places:9.2.1'
    compile ('com.facebook.android:facebook-android-sdk:4.16.1') {
        exclude module: 'bolts-tasks'
    }
    compile 'com.android.support:cardview-v7:25.2.0'
    compile 'com.android.support:preference-v14:25.2.0'
    compile 'com.android.support:recyclerview-v7:25.2.0'
    compile 'com.android.support:design:25.2.0'
    compile 'com.parse.bolts:bolts-tasks:1.4.0'
    compile 'com.parse:parse-android:1.14.0'
    compile ('com.parse:parseui-widget-android:0.0.1') {
        exclude module: 'parse-android'
    }
    compile project(':commons')
}

apply plugin: 'com.google.gms.google-services’

1 个答案:

答案 0 :(得分:0)

好的,不知怎的,我在运行配置中有这个:

https://github.com/tensorflow/tensorflow/issues/3115

删除Syslog后,我恢复了理智的编译行为。我想知道为什么我会有额外的制作。