安卓工作室Gradle 2.0.0-alpha1构建错误

3

尝试使用最新的gradle 2.0.0-alpha1版本进行构建。 编译时会出现错误,我完全不知道哪里出了问题。 旧版的gradle 1.5.0没有任何问题。 当我运行./gradlew assembleDebug -debug -stacktrace时,输出如下:

task={from=abc_list_longpressed_holo.9.png, to=/Users/gillis/AndroidStudioProjects/FootballMania/app/build/intermediates/res/merged/debug/drawable-hdpi-v4/abc_list_longpressed_holo.9.png},
latch=BooleanLatch{signaled=false},
result=false}
12:07:42.224 [DEBUG] [org.gradle.api.Task] Thread(png-cruncher_77): Process(784760824), after shutdown queue_size=0
12:07:42.224 [DEBUG] [org.gradle.api.Task] Shutdown finished in 4689
12:07:42.225 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':app:mergeDebugResources'
12:07:42.225 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :app:mergeDebugResources FAILED
12:07:42.225 [INFO] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] :app:mergeDebugResources (Thread[Task worker Thread 3,5,main]) completed. Took 9.416 secs.
12:07:42.225 [DEBUG] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] Task worker [Thread[Daemon worker Thread 12,5,main]] finished, busy: 4.182 secs, idle: 8.516 secs
12:07:42.226 [DEBUG] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] Task worker [Thread[Task worker,5,main]] finished, busy: 4.905 secs, idle: 7.799 secs
12:07:42.226 [DEBUG] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] Task worker [Thread[Task worker Thread 2,5,main]] finished, busy: 4.809 secs, idle: 7.892 secs
12:07:42.226 [DEBUG] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] Task worker [Thread[Task worker Thread 3,5,main]] finished, busy: 11.86 secs, idle: 0.834 secs
12:07:42.227 [ERROR] [org.gradle.BuildExceptionReporter]
12:07:42.227 [ERROR] [org.gradle.BuildExceptionReporter] FAILURE: Build failed with an exception.
12:07:42.227 [ERROR] [org.gradle.BuildExceptionReporter]
12:07:42.228 [ERROR] [org.gradle.BuildExceptionReporter] * What went wrong:
12:07:42.228 [ERROR] [org.gradle.BuildExceptionReporter] Execution failed for task ':app:mergeDebugResources'.
12:07:42.228 [ERROR] [org.gradle.BuildExceptionReporter] > Some file crunching failed, see logs for details
12:07:42.228 [ERROR] [org.gradle.BuildExceptionReporter]
12:07:42.228 [ERROR] [org.gradle.BuildExceptionReporter] * Exception is:
12:07:42.229 [ERROR] [org.gradle.BuildExceptionReporter] org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:mergeDebugResources'.
12:07:42.229 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
12:07:42.229 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
12:07:42.229 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
12:07:42.229 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
12:07:42.229 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
12:07:42.229 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
12:07:42.230 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
12:07:42.230 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
12:07:42.230 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
12:07:42.230 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
12:07:42.230 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
12:07:42.230 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:62)
12:07:42.230 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
12:07:42.230 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter] Caused by: java.lang.RuntimeException: Some file crunching failed, see logs for details
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.builder.png.QueuedCruncher.waitForAll(QueuedCruncher.java:260)
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.builder.png.QueuedCruncher.end(QueuedCruncher.java:280)
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.ide.common.res2.MergedResourceWriter.end(MergedResourceWriter.java:132)
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.ide.common.res2.DataMerger.mergeData(DataMerger.java:295)
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.ide.common.res2.ResourceMerger.mergeData(ResourceMerger.java:400)
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.build.gradle.tasks.MergeResources.doFullTaskAction(MergeResources.java:216)
12:07:42.231 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:88)
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:244)
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:220)
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:231)
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:209)
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]    ... 14 more
12:07:42.232 [ERROR] [org.gradle.BuildExceptionReporter]
12:07:42.233 [LIFECYCLE] [org.gradle.BuildResultLogger]
12:07:42.233 [LIFECYCLE] [org.gradle.BuildResultLogger] BUILD FAILED
12:07:42.233 [LIFECYCLE] [org.gradle.BuildResultLogger]
12:07:42.233 [LIFECYCLE] [org.gradle.BuildResultLogger] Total time: 23.324 secs

不确定出了什么问题。是PNG文件的问题吗?有人有想法吗? 输出显示与日志文件有关。那些日志文件在哪里?

这是我的Gradle文件:

apply plugin: 'com.android.application'

buildscript {
    repositories {
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.0.0-alpha1'
    }
}

android {
    compileSdkVersion 23
    buildToolsVersion '23.0.2'

    defaultConfig {
        applicationId "x"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 301
        versionName "301.0"
    }

    dexOptions {
        jumboMode = true
        incremental true
        javaMaxHeapSize "4g"
    }

    lintOptions{
        checkReleaseBuilds false
        abortOnError false
    }
    buildTypes {
        debug {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            multiDexEnabled true
        }
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            multiDexEnabled true
        }
        releaseAmazon {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            multiDexEnabled true
        }
    }
    sourceSets {
        main {
            java.srcDirs = ['src']
            assets.srcDirs = ['assets']
            res.srcDirs = ['res']
            manifest.srcFile 'AndroidManifest.xml'
           // aidl.srcDirs = ['src/com']
        }
    }

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

repositories {
    maven { url "https://jitpack.io" }
}

dependencies {
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:cardview-v7:23.1.1'
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile project(':holoduke_common')
    //compile 'com.android.support:multidex:1.0.0'
    compile project(':gradientButtons')
    compile 'com.github.codechimp-org.apprater:library:1.0.+'
    //compile 'com.github.nkzawa:socket.io-client:0.3.+'
    compile 'com.google.apis:google-api-services-youtube:v3-rev148-1.20.0'
    compile files('libs/YouTubeAndroidPlayerApi.jar')
    //compile 'com.anjlab.android.iab.v3:library:1.0.+@aar'
    compile project(':ASNE_facebook')
    compile project(':twitter')
    compile project(':vkontakte')
    compile project(':googleplus')
    compile project(':socketio_custom')
    compile 'com.joooonho:selectableroundedimageview:1.0.1'
    compile 'com.github.PhilJay:MPAndroidChart:v2.1.4'
}

1
好的,设置buildToolsVersion '23.0.1'classpath 'com.android.tools.build:gradle:1.5.0'。避免使用alpha1版本。 - IntelliJ Amiya
你正在使用 Gradle 2.8 吗? - Gabriele Mariotti
使用Gradle 2.8是非常令人沮丧的,但这就是为什么它还处于alpha版本的原因 :) - Gillis Haasnoot
同时,我在输出中遇到了以下错误:AAPT: /Users/gillis/AndroidStudioProjects/FootballMania/app/res/drawable-ldpi/belldisabled.png: libpng警告:iCCP:无法识别已编辑的已知sRGB配置文件。AAPT: libpng错误:不是PNG文件。这个错误是什么意思?我的意思是,那些文件肯定是PNG文件。 - Gillis Haasnoot
您IP地址为143.198.54.68,由于运营成本限制,当前对于免费用户的使用频率限制为每个IP每72小时10次对话,如需解除限制,请点击左下角设置图标按钮(手机用户先点击左上角菜单按钮)。 - Gillis Haasnoot
4个回答

2

尝试在您的 defaultConfig 中设置这个:

aaptOptions.setProperty("cruncherEnabled", false)

在这种情况下的权衡将会是显著增加apk大小。 - Ritesh Gune

1

最近,我遇到了一个类似的问题。也许和你的问题一样。

首先,让我告诉你日志在哪里。

只需按下Gradle Console按钮,如下所示。

enter image description here

如果你在AS窗口下方找不到该按钮,可以在菜单中重新显示它:View - Tool Windows - Gradle Console

然后再次构建项目,在Gradle Console中查看日志。如果你有和我一样的错误日志,即“不是png文件”,你可以检查png文件,该文件可能不是有效的png文件。纠正它,再次构建后你就会成功。

希望这可以帮助你。

祝你好运。


0

当我升级我的Studio到2.0版本时,我也遇到过同样的情况。当你的项目中存在一个损坏的PNG文件时,会出现这种情况,如此处所述:Android Studio Gradle build error :app:mergeDebugResources, Crunching Cruncher loader.png failed

因此,我使用了这个工具http://www.libpng.org/pub/png/apps/pngcheck.html (Windows版),并在每个包含.png文件的文件夹中使用命令行 E:\PngCheck\pngcheck.exe *.png找到了一些文件,然后我使用SnagIt转换器修复了这些.png文件。

请注意,在我的情况下,pngcheck位于E驱动器上的PngCheck文件夹中。因此,请确保您不要只是复制粘贴,而是使用正确的路径来执行您的pngcheck.exe文件。

完成这些步骤后,我清理了Android项目,一切都非常顺利。

希望这有所帮助...


0

使用 gradle-2.10 并将 classpath 中的 com.android.tools.build:gradle:2.0.0-alpha1 更改为 com.android.tools.build:gradle:2.0.0-beta2


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接