java.lang.NullPointerException, когда dataBinding enabled = true - PullRequest
0 голосов
/ 25 сентября 2019

Всякий раз, когда я включаю это в своем приложении gradle

dataBinding { 
    enabled = true
}

и затем синхронизирую -> Это полностью успешно.

, но когда я его "запускаю", сборка завершается неудачно и показывает эту ошибку

java.lang.NullPointerException в android.databinding.tool.store.LayoutFileParser.parseOriginalXml (LayoutFileParser.java:135) в android.databinding.tool.store.LayoutFileParser.ar93) на android.databinding.tool.LayoutXmlProcessor.processSingleFile (LayoutXmlProcessor.java:157) на com.android.build.gradle.tasks.MergeResources $ CreationAction $ 1.processSingleFile (MergeResources.java:749) на com.and.common.resources.MergedResourceWriter.end (MergedResourceWriter.java:277) по адресу com.android.ide.common.resources.DataMerger.mergeData (DataMerger.java:292) по адресу com.android.ide.common.resources.ResourceMerger.mergeData (ResourceMerger.java:384) на com.android.build.gradle.tasks.MergeResources.lambda $ doFullTaskAction $ 1 (MergeResources.java:261) на com.android.build.gradle.internal.tasks.Blocks.recordSpan (Blocks.java:58) в com.android.build.gradle.tasks.MergeResources.doFullTaskAction (MergeResources.java:257) в com.android.build.gradle.internal.tasks.IncrementalTask.handleInc(IncrementalTask.kt: 107) в com.android.build.gradle.internal.tasks.IncrementalTask.access $ handleIncrementalInputs (IncrementalTask.kt: 64) в com.android.build.gradle.internal.tasks.IncrementalTask ​​$ taskAction $$встроенный $ recordTaskAction $ 1.invoke (AndroidVariantTask.kt: 51) в com.android.build.gradle.internal.tasks.IncrementalTask ​​$ taskAction $$ встроенный $ recordTaskAction $ 1.invoke (AndroidVariantTask.kt: 31) в com.android.build.gradle.internal.tasks.Blocks.recordSpan (Blocks.java:91) в com.android.build.gradle.internal.tasks.IncrementalTask.taskAction $ gradle (IncrementalTask.kt: 134) в sun.reflect.GeneratedMethodAccessor112.invoke(Неизвестный источник) в sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) в java.lang.reflect.Method.invoke (Method.java:498)org.gradle.internal.reflect.JavaMethod.invoke (JavaMethod.java:103) в org.gradle.api.internal.project.taskfactory.IncrementalTaskInputsTaskAction.doExecute (IncrementalTaskInputsTaskAction.javaingra. atle.grag.)project.taskfactory.StandardTaskAction.execute (StandardTaskAction.java:41) в org.gradle.api.internal.project.taskfactory.AbstractIncrementalTaskAction.execute (AbstractIncrementalTaskAction.java:25) в org.intain.pro.t.StandardTaskAction.execute (StandardTaskAction.java:28) в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter $ 5.run (ExecuteActionsTaskExecuter.java:404) в org.gradle.internal.operationsDildorkBoperationOduperationOUperationS.java: 402) at org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:394) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ 1.execute (DefaultBuildOperationExecutor.java:165) в org.gradle.internal.operations.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:250) в org.gradle.internal.operations.DefaultBuildOperationExDecutor.execute (DefaultBuild.java) org.operations.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:92) в org.gradle.internal.operations.DelegatingBuildOperationExecutor.run (DelegatingBuildOperationExecutor.java:31) в org.gradle.apiExinException.java: 393) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions (ExecuteActionsTaskExecuter.java:376)по адресу org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access $ 200 (ExecuteActionsTaskExecuter.java:80) по адресу org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter $ TaskExecution.exterjk_exec_exase_Exceptionorg.gradle.internal.execution.steps.ExecuteStep.lambda $ execute $ 0 (ExecuteStep.java:32) в java.util.Optional.map (Optional.java:215) в org.gradle.internal.execution.steps.ExecuteStep.execute (ExecuteStep.java:32) в org.gradle.internal.execution.steps.ExecuteStep.execute (ExecuteStep.java:26) в org.gradle.internal.execution.steps.CleanupOutputsStep.execute (CleanupOutputsStep.jpg) в org.gradle.internal.execution.steps.CleanupOutputsStep.execute (CleanupOutputsStep.java:35) в org.gradle.internal.execution.steps.ResolveInputChangesStep.execute (ResolveInputChangesStep.gav48) .gava:execute.steps.ResolveInputChangesStep.execute (ResolveInputChangesStep.java:33) в org.gradle.internal.execution.steps.CancelExecutionStep.execute (CancelExecutionStep.java:39) в org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout (TimeoutStep.java:73) в org.gradle.internal.execution.steps.TimeoutStep.execute (TimeoutStep.j::в org.gradle.internal.execution.steps.CatchExceptionStep.execute (CatchExceptionStep.java:35) в org.gradle.internal.execution.steps.CreateOutputsStep.execute (CreateOutputsStep.java:51) в org.gradletioninternal..steps.SnapshotOutputsStep.execute (SnapshotOutputsStep.java:45) в org.gradle.internal.execution.steps.SnapshotOutputsStep.execute (SnapshotOutputsStep.java:31) в org.gradle.internal.executionStepTecPtepSteps.java: 201) в org.gradle.internal.execution.steps.CacheStep.execute (CacheStep.java:70) в org.gradle.internal.execution.steps.CacheStep.execute (CacheStep.java:45) в орг.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute (BroadcastChangingOutputsStep.java:49) в org.gradle.internal.execution.steps.StoreSnapshotsStep.exeCute (StoreSnapshotsStep.java:43) в org.gradle.internal.execution.steps.StoreSnapshotsStep.execute (StoreSnapshotsStep.java:32) в org.gradle.internal.execution.steps.RecordOutputsStep.exavate)в org.gradle.internal.execution.steps.RecordOutputsStep.execute (RecordOutputsStep.java:24) в org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause (SkipUpToDateStep.gra.jpg ::.steps.SkipUpToDateStep.lambda $ выполнить $ 0 (SkipUpToDateStep.java:89) в java.util.Optional.map (Optional.java:215) в org.gradle.internal.execution.steps.SkipUpToDateSteptepteptep54) в org.gradle.internal.execution.steps.SkipUpToDateStep.execute (SkipUpToDateStep.java:38) в org.gradle.internal.execution.steps.ResolveChangesStep.execute (ResolveChangesSdlepj) org..execution.steps.ResolveChangesStep.execute (ResolveChangesStep.java:37) в org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.Execute (MarkSnapshottingInputsFinishedStep.java:36) при org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute (MarkSnapshottingInputsFinishedStep.java:26) в org.gradle.internal.execution.steps.ResolveCachingStateStep.execute (ResolveCachingStateStep.java: 90) в org.gradle.internal.execution.steps.ResolveCachingStateStep.execute (ResolveCachingStateStep.java:48) в org.gradle.internal.execution.impl.DefaultWorkExecutor.execute (DefaultWorkExecutor.java:33) в org.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute (ExecuteActionsTaskExecuter.java:120) в org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionStateTaskExecuter.execute (ResolveSteв org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute (ValidatingTaskExecuter.java:62) в org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.exastySGF.jpg.api.internal..tasks.execution..ResolveTaskExecutionModeExecuter.execute (ResolveTaskExecutionModeExecuter.java:95) при org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute (SkipTaskWithNoActionsExecuter.java:57) в org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute (SkipOnlyIfTaskExecuter.java:56) в org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter ()36) в org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter $ 1.executeTask (EventFiringTaskExecuter.java:73) в org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter $ 1.call: EventFiring.в org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter $ 1.call (EventFiringTaskExecuter.java:49) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ CallableBuildOperationWorker.execute: DefaultecuildO org4.internal.operations.DefaultBuildOperationExecutor $ CallableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:406) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ 1.execute (DefaultBuildOperationExecutor.java:16.group.jpg) илиBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:250) в org.gradle.internal.operations.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:158) в org.gradle.internal.operations.DefaultBuildOperationExg.gradle.internal.operations.DelegatingBuildOperationExecutor.call (DelegatingBuildOperationExecutor.java:36) в org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute (EventFiringTaskExecuter.java:49dle.as.gra....execute (LocalTaskNodeExecutor.java:43) в org.gradle.execution.taskgraph.DefaultTaskExecutionGraph $ InvokeNodeExecutorsAction.execute (DefaultTaskExecutionGraph.java:355) в org.gradle.execution.taskraphExGotGodeTexGjectEgntionGateTackTack) в org.gradle.execution.taskgraph.DefaultTaskExecutionGraph $ BuildOperationAwareExecutionAction.execute (DefaultTaskExecutionGraph.java:336) в org.gradle.execution.taskgraph.DefaultTaskExecutionGraph $ BuildOperationAwareExecutionAction.execute (DefaultTaskExecutionGraph.java:322) в org.gradle.execution.plan.DefaultPlanExecutor $ ExecutorWorker $ 1.execu1.grag.execute.plan.DefaultPlanExecutor $ ExecutorWorker $ 1.execute (DefaultPlanExecutor.java:129) в org.gradle.execution.plan.DefaultPlanExecutor $ ExecutorWorker.execute (DefaultPlanExecutor.java:202) в org.gradle.executionececer $.executeNextNode (DefaultPlanExecutor.java:193) по адресу org.gradle.execution.plan.DefaultPlanExecutor $ ExecutorWorker.run (DefaultPlanExecutor.java:129) по адресу org.gradle.internal.concurrent.ExecutorPolicy $ CatchAndRecutor.Exec)на org.gradle.internal.concurrent.ManagedExecutorImpl $ 1.run (ManagedExecutorImpl.java:46) на java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149) на java.util.conPoolThreadPoolExecutor.java:624) в org.gradle.internal.concurrent.ThreadFactoryImpl $ ManagedThreadRunnable.run (ThreadFactoryImpl.java:55) в java.lang.Thread.run (Thread.java:748)

В моем приложении мало кода Kotlin, а версия для Android - 3.5, minSdkVersion 19, targetSdkVersion 28 и обновлена ​​до androidX

Как я могу решить эту проблему?какую часть я должен искать, чтобы решить эту проблему ???

, за исключением приведенного выше кода, все работает идеально.


Edit И когда я откатил свой кодперед обновлением до androidX и его компиляцией также отображается «исключение нулевой точки», и в настоящее время нет дополнительных сообщений без «исключения нулевой точки».


1 Ответ

0 голосов
/ 27 сентября 2019

Наконец я получил ответ.(cc. ошибка привязки данных андроида: не удалось выполнить задачу ': app: dataBindingProcessLayoutsDebug' )

Я догадался, что это из-за спецификации.Кто-то сказал, что это произойдет, когда код будет использоваться в двух разных обстоятельствах (Window и Mac).

Поэтому в папке «res» я нажал кнопку «удалить BOM» в Android Studio, и это действие изменило некоторые XML-файлы..

<?xml version="1.0" encoding="utf-8"?>

Но в Mac это не работало.Это решение работало только в Window.

...