Gradle build lintVitalRelease NullPointerException

问题描述 投票:11回答:2

更新了从3.0 Canary 3到Beta 2的Android Studio,以及从Alpha 5到Beta 2的Gradle插件。调试构建很好,但是当尝试为发布版本类型生成签名的APK时,此错误不断出现。尝试删除.gradle文件夹,.idea文件夹,Invalidate caches&Restart和gradlew clean。

14:16:32.483 [ERROR] [system.err] Note: Recompile with -Xlint:deprecation for details.
14:16:32.483 [ERROR] [system.err] Note: Some input files use unchecked or unsafe operations.
14:16:32.483 [ERROR] [system.err] Note: Recompile with -Xlint:unchecked for details.
14:16:37.434 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
14:16:37.434 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] FAILURE: Build failed with an exception.
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * What went wrong:
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Execution failed for task ':app:lintVitalRelease'.
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > java.lang.NullPointerException (no error message)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Exception is:
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:lintVitalRelease'.
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
14:16:37.435 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: java.lang.NullPointerException
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.scope.BuildOutput.getOutputPath(BuildOutput.java:222)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.scope.BuildOutputs.lambda$load$2(BuildOutputs.java:243)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.scope.BuildOutputs.load(BuildOutputs.java:245)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.scope.BuildOutputs.load(BuildOutputs.java:184)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.scope.BuildOutputs.load(BuildOutputs.java:140)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.ide.BuildOutputsSupplier.lambda$get$1(BuildOutputsSupplier.java:55)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.google.common.collect.ImmutableList.forEach(ImmutableList.java:397)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.ide.BuildOutputsSupplier.get(BuildOutputsSupplier.java:50)
14:16:37.436 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.ide.BuildOutputsSupplier.get(BuildOutputsSupplier.java:35)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.ide.AndroidArtifactImpl.getOutputs(AndroidArtifactImpl.java:135)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.LintGradleProject$AppGradleProject.<init>(LintGradleProject.java:206)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.LintGradleProject$AppGradleProject.<init>(LintGradleProject.java:192)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.LintGradleProject$ProjectSearch.getProject(LintGradleProject.java:949)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.LintGradleProject$ProjectSearch.getProject(LintGradleProject.java:785)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.LintGradleClient.createLintRequest(LintGradleClient.java:193)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.tools.lint.LintCliClient.run(LintCliClient.java:151)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.internal.LintGradleClient.run(LintGradleClient.java:209)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.tasks.Lint.runLint(Lint.java:359)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.tasks.Lint.lintSingleVariant(Lint.java:329)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.tasks.Lint.lint(Lint.java:134)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.doExecute(DefaultTaskClassInfoStore.java:141)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:731)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:705)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   ... 27 more
14:16:37.437 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
14:16:37.438 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
14:16:37.438 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Get more help at https://help.gradle.org
14:16:37.438 [ERROR] [org.gradle.internal.buildevents.BuildResultLogger] 
14:16:37.438 [ERROR] [org.gradle.internal.buildevents.BuildResultLogger] BUILD FAILED in 19s
android android-studio gradle android-gradle
2个回答
30
投票

选项1.推荐。解决问题。

修复问题本身而不是禁用它。

要执行此操作,请转到app/build/outputs/lint-results-release-fatal.html右键单击它并选择在浏览器中打开。修复它提供的详细错误。我做了这个,修复了我的错误,现在它编译发布apk。

选项2.禁用检查。

org.gradle.api.tasks.TaskExecutionException:任务':app:lintVitalRelease'的执行失败。

您应该在build.gradle部分添加checkReleaseBuilds

  android {
    lintOptions { 
        checkReleaseBuilds false // Add this
        abortOnError false
    }
}

然后Clean-Rebuild-Run


1
投票

How to know what's wrong in your code?

这很简单。在浏览器中打开lint-results-release-fatal.html文件,您将看到代码的确切错误。就我而言,这是一个缺失的翻译。当我在浏览器中打开lint-results-release-fatal.html时,它看起来像这样。

enter image description here

How to open lint-results-release-fatal.html in browser?

转到此路径apps / build / reports / lint-results-release-fatal.html右键单击并选择“在浏览器中打开”选项。如果在项目中找不到它,则可以将透视更改为Project。

如果你仍然困惑。然后按照这3个步骤。

1)将Perspective更改为Project

enter image description here

2)转到apps / build / reports / lint-results-release-fatal.html

enter image description here

3)右键单击并选择“在浏览器中打开”选项

Missing Translation

正如爱德华提到的那样,9/10次是由于缺少翻译。在我的应用程序中,我通过创建备用string.xml文件添加了多语言支持。但忘了用其他语言添加它。我在尝试创建签名APK时遇到此错误。在打开lint-results-release-fatal.html(错误报告)之前,我不知道出了什么问题。所以在Laymen术语中,它就像是通过错误报告。它告诉您根本原因,来源和可能的解决方案。您还可以打开错误报告的XML版本,即lint-results-release-fatal.xml。

错误报告清楚地表明了这一点。

<string name="action_settings">Settings</string>

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.