Gradle build lintVitalRelease NullPointerException
Обновлена Android Studio с 3.0 Canary 3 до Beta 2, а плагин Gradle с Alpha 5 до Beta 2. Отладка выполняется просто отлично, но при попытке создать подписанный APK для типа сборки выпуска эта ошибка продолжает появляться. Попытался удалить папку.gradle, папку.idea, сделать недействительными кэши, перезапустить и очистить gradlew.
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
1 ответ
Вариант 1. Рекомендуется. Исправить проблему.
Исправьте проблему, а не отключайте ее.
Для этого перейдите к app/build/outputs/lint-results-release-fatal.html
щелкните правой кнопкой мыши и выберите открыть в браузере. Исправьте подробную ошибку, которую он предоставляет. Я сделал это, исправил свою ошибку и теперь он компилирует релиз apk.
Вариант 2. Отключить проверку.
org.gradle.api.tasks.TaskExecutionException: не удалось выполнить задачу ':app:lintVitalRelease'.
Вы должны добавить checkReleaseBuilds
в разделе build.gradle.
android {
lintOptions {
checkReleaseBuilds false // Add this
abortOnError false
}
}
затем Clean-Rebuild-Run
,
Как узнать, что не так в вашем коде?
Это просто. открыто lint-results-release-fatal.html
файл в браузере, и вы увидите, что именно не так с вашим кодом. В моем случае это был пропущенный перевод. Когда я открыл в браузере файл lint-results-release-fatal.html, это выглядело так.
Как открыть lint-results-release-fatal.html в браузере?
Перейдите по этому пути, щелкните правой кнопкой мыши приложения apps/build/reports/lint-results-release-fatal.html и выберите " Открыть в браузере". Если вы не нашли его в своем проекте, вы можете изменить перспективу на Project.
Если вы все еще в замешательстве. Затем выполните эти 3 шага.
1) Изменить перспективу на проект
2) Перейдите в apps/build/reports/lint-results-release-fatal.html
3) Щелкните правой кнопкой мыши и выберите "Открыть в браузере"
Отсутствует перевод
Как сказал Эдвард, 9/10 раз это связано с отсутствием перевода. В моем приложении я добавил поддержку нескольких языков, создав альтернативные файлы string.xml. Но забыл добавить его на других языках. Я получил эту ошибку, когда пытался создать подписанный APK. Я понятия не имел, что пошло не так, пока я не открою lint-results-release-fatal.html
(Сообщение об ошибке). Таким образом, в терминах Laymen это похоже на прохождение сообщения об ошибке. Который говорит вам первопричину, источник и возможное решение. Вы также можете открыть XML-версию отчета об ошибке - lint-results-release-fatal.xml.
Сообщение об ошибке ясно показывает это.
<string name="action_settings">Settings</string>