parceler icon indicating copy to clipboard operation
parceler copied to clipboard

Gradle build error after updating to 1.1.11 from 1.1.6

Open doniwinata0309 opened this issue 7 years ago • 31 comments

Hi, I got this error after updating to parceler 1.1.11, while it is working fine on parceler 1.1.6

Android gradle plugin : 3.1.2 Kotlin: 1.2.40 androidSupport : 27.1.1 Databinding compiler: 27.1.1

Here some error log from logcat and please let me know if you need additional information. do you know what might be wrong with this ? thank you

12:09:00.321 [ERROR] [system.err]   symbol:   class DataBindingComponent
12:09:00.321 [ERROR] [system.err]   location: class LayerViewDescriptionToolbarSearchContentBinding
12:09:00.322 [ERROR] [system.err] /Users/doni.winata/android-v3/app/build/generated/source/dataBinding/baseClasses/general/debug/com/test/android/databinding/LayerViewDescriptionToolbarSearchContentBinding.java:70: error: cannot find symbol
12:09:00.751 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > java.lang.NullPointerException
12:09:00.751 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
12:09:00.752 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Try:
12:09:00.752 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]  Run with --scan to get full insights.
12:09:00.752 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
12:09:00.752 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Exception is:
12:09:00.752 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileGeneralDebugJavaWithJavac'.
12:09:00.752 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipCachedTaskExecuter.execute(SkipCachedTaskExecuter.java:105)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ResolveBuildCacheKeyExecuter.execute(ResolveBuildCacheKeyExecuter.java:79)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
12:09:00.753 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute(LocalTaskInfoExecutor.java:42)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:277)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:262)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:135)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
12:09:00.754 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.java:200)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.java:191)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: java.lang.RuntimeException: java.lang.NullPointerException
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.main.Main.compile(Main.java:553)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:129)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:138)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.AnnotationProcessingCompileTask.call(AnnotationProcessingCompileTask.java:89)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.ResourceCleaningCompilationTask.call(ResourceCleaningCompilationTask.java:57)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:50)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:36)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:100)
12:09:00.755 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:52)
12:09:00.756 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:38)
12:09:00.756 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.AnnotationProcessorDiscoveringCompiler.execute(AnnotationProcessorDiscoveringCompiler.java:49)
12:09:00.756 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.AnnotationProcessorDiscoveringCompiler.execute(AnnotationProcessorDiscoveringCompiler.java:35)
12:09:00.756 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:39)
12:09:00.756 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.incremental.IncrementalCompilerFactory$2.execute(IncrementalCompilerFactory.java:110)
12:09:00.756 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.incremental.IncrementalCompilerFactory$2.execute(IncrementalCompilerFactory.java:106)
12:09:00.756 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.incremental.IncrementalResultStoringCompiler.execute(IncrementalResultStoringCompiler.java:59)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.incremental.IncrementalResultStoringCompiler.execute(IncrementalResultStoringCompiler.java:43)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:153)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:121)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.tasks.factory.AndroidJavaCompile.compile(AndroidJavaCompile.java:125)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:50)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
12:09:00.757 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   ... 33 more
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: java.lang.NullPointerException
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.base.Preconditions.checkNotNull(Preconditions.java:210)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.collect.SingletonImmutableList.<init>(SingletonImmutableList.java:40)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.collect.ImmutableList.of(ImmutableList.java:89)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.collect.ImmutableList.copyOf(ImmutableList.java:273)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.collect.ImmutableList.copyOf(ImmutableList.java:226)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.collect.FluentIterable.toList(FluentIterable.java:373)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.adapter.GenericsUtil$1.buildGenericParameters(GenericsUtil.java:79)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.adapter.ASTGenericTypeWrapper.getGenericArgumentTypes(ASTGenericTypeWrapper.java:43)
12:09:00.758 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.adapter.GenericsUtil$1.buildGenericParameters(GenericsUtil.java:74)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.adapter.ASTGenericTypeWrapper.getGenericArgumentTypes(ASTGenericTypeWrapper.java:43)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.adapter.ASTGenericTypeWrapper.equals(ASTGenericTypeWrapper.java:162)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.util.matcher.ASTTypeMatcher.matches(ASTTypeMatcher.java:52)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.util.matcher.ASTTypeMatcher.matches(ASTTypeMatcher.java:26)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.Generators.matches(Generators.java:45)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.matcher.GenericCollectionMatcher$1.apply(GenericCollectionMatcher.java:49)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.matcher.GenericCollectionMatcher$1.apply(GenericCollectionMatcher.java:47)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.collect.Iterators.all(Iterators.java:697)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.collect.Iterables.all(Iterables.java:632)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.collect.FluentIterable.allMatch(FluentIterable.java:225)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.matcher.GenericCollectionMatcher.matches(GenericCollectionMatcher.java:47)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.matcher.GenericCollectionMatcher.matches(GenericCollectionMatcher.java:30)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.Generators.matches(Generators.java:45)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.ParcelableAnalysis.validateType(ParcelableAnalysis.java:649)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.ParcelableAnalysis.innerAnalyze(ParcelableAnalysis.java:315)
12:09:00.759 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.ParcelableAnalysis.analyze(ParcelableAnalysis.java:68)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.ParcelTransactionWorker.innerRun(ParcelTransactionWorker.java:48)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.ParcelTransactionWorker.innerRun(ParcelTransactionWorker.java:31)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.transaction.AbstractCompletionTransactionWorker.run(AbstractCompletionTransactionWorker.java:35)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.transaction.CodeGenerationScopedTransactionWorker.innerRun(CodeGenerationScopedTransactionWorker.java:47)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.transaction.AbstractCompletionTransactionWorker.run(AbstractCompletionTransactionWorker.java:35)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.transaction.ScopedTransactionWorker.run(ScopedTransactionWorker.java:55)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.transaction.Transaction.run(Transaction.java:77)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.guava.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:299)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.transaction.TransactionProcessorPool.execute(TransactionProcessorPool.java:60)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.transaction.TransactionProcessorComposite.execute(TransactionProcessorComposite.java:37)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.transfuse.transaction.TransactionProcessorChain.execute(TransactionProcessorChain.java:38)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.internal.ParcelProcessor.execute(ParcelProcessor.java:83)
12:09:00.760 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.parceler.ParcelAnnotationProcessor.process(ParcelAnnotationProcessor.java:84)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.processing.DelegatingProcessor.process(DelegatingProcessor.java:62)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.compile.processing.IsolatingProcessor.process(IsolatingProcessor.java:50)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:794)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:705)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.processing.JavacProcessingEnvironment.access$1800(JavacProcessingEnvironment.java:91)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1035)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1176)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1170)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:856)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at com.sun.tools.javac.main.Main.compile(Main.java:523)
12:09:00.761 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   ... 64 more
12:09:00.761 [ERROR] [org.gradle.internal
``

doniwinata0309 avatar Oct 02 '18 05:10 doniwinata0309

Hmm, do you have a class that you've annotated with @Parcel that has generics defined?

johncarl81 avatar Oct 03 '18 00:10 johncarl81

Hi @johncarl81, does generic defined means is generic on the base class or generic on the field ? We only have generic on the field: protected LinkedHashMap<String, String> promo; this class annotated with @Parcel and used as viewmodel for databinding.

doniwinata0309 avatar Oct 03 '18 05:10 doniwinata0309

Could you share the full details of that class? I wonder if changing LinkedHashMap<..> to just Map<...> would make a difference.

johncarl81 avatar Oct 03 '18 15:10 johncarl81

This is the example of full class:

@Parcel
public class TestParcel extends BaseObservable {

    protected LinkedHashMap<String, String> promo;

    public TestParcel() {
        promo = new LinkedHashMap<>();
    }

    @Bindable
    public LinkedHashMap<String, String> getPromo() {
        return promo;
    }

    public void setPromo(LinkedHashMap<String, String> promo) {
        this.promo = promo;
        notifyPropertyChanged(BR.promo);
    }
}

We use so many LinkedHashMap on the other class as well, do you think LinkedHashMap could be the problem here ?

doniwinata0309 avatar Oct 04 '18 14:10 doniwinata0309

Ah, I think it's tripping up on something in BaseObservable. Would you try the following configuration:

@Parcel(analyze = TestParcel.class)
public class TestParcel extends BaseObservable {

    protected LinkedHashMap<String, String> promo;

    public TestParcel() {
        promo = new LinkedHashMap<>();
    }

    @Bindable
    public LinkedHashMap<String, String> getPromo() {
        return promo;
    }

    public void setPromo(LinkedHashMap<String, String> promo) {
        this.promo = promo;
        notifyPropertyChanged(BR.promo);
    }

}

johncarl81 avatar Oct 04 '18 16:10 johncarl81

In general I opt for using the most general interface I can - typically using the interface over the implementation. In this case LinkedHashMap is an implementation of Map. Parceler does handle LinkedHashMap though, so that's not an issue.

johncarl81 avatar Oct 04 '18 16:10 johncarl81

I just added analyze on the top of the class but cannot see any difference from the log or error trace, what analyze use for ?

doniwinata0309 avatar Oct 05 '18 07:10 doniwinata0309

analyze is used to explicitly indicate which classes for Parceler to process (Javadocs)

johncarl81 avatar Oct 16 '18 01:10 johncarl81

Any success on this one @doniwinata0309 ?

johncarl81 avatar Nov 03 '18 18:11 johncarl81

hi @johncarl81 , apologize for the late reply. I just put all @Parcel annotation with analyze parameter, but the error remain the same. do you have other suggestion ?

doniwinata0309 avatar Nov 23 '18 12:11 doniwinata0309

I just check the documentation again, is it mandatory for these points after 1.1.6 ?

  • Use only public fields (private fields cannot be detected during annotation) that need to be serialized.
  • Create a public constructor with no arguments for the annotation library.

doniwinata0309 avatar Nov 23 '18 13:11 doniwinata0309

Hi @johncarl81, I just checked the version 1.1.17 -1.1.9 also failed with the same error. Then the version 1.1.10 has different error with 1.1.7, but the same with 1.1.11.

doniwinata0309 avatar Dec 03 '18 07:12 doniwinata0309

Hi @doniwinata0309, could you produce a quick sample app to demonstrate the issue? That would help me greatly in debugging.

johncarl81 avatar Dec 03 '18 16:12 johncarl81

sure, i will try to repro this from new project if possible.

By the way, after checking the build folder, i just found out that the @Parcel class is not generated with this scenario. ex:

@Parcel
public class class1 {
  protected String id;
  protected myInnerClass myClass2;

  @Parcel
  public static class myInnerClass{
  ....
  }
}

Is this behaviour expected ?

doniwinata0309 avatar Dec 10 '18 14:12 doniwinata0309

Nope, inner classes should (and do) work.

johncarl81 avatar Dec 14 '18 16:12 johncarl81

@doniwinata0309, still having issues with this? If not, I'd like to close.

johncarl81 avatar Dec 20 '18 17:12 johncarl81

Yes we still facing the error, but i think we can close it for now. Aplogise for slow response. Thanks @johncarl81

doniwinata0309 avatar Dec 20 '18 17:12 doniwinata0309

By the way, do you have advice how to debugging the error ? I have no idea which file causing this null error. So far i know which module that causing the error, but it contains like hundred of classes with parceler annotation. It would be nice if we can pointing specific file that causing it.

doniwinata0309 avatar Dec 20 '18 17:12 doniwinata0309

quite alright... I dont know, but I've heard of similar problems recently in Kotlin... are you trying to set up an @Parcel on a sealed class?

johncarl81 avatar Dec 20 '18 18:12 johncarl81

Ping @doniwinata0309

johncarl81 avatar Dec 22 '18 00:12 johncarl81

Hi @johncarl81 , no we didn't use sealed class at all. I just checked my code, seems like it is different issue.

doniwinata0309 avatar Dec 26 '18 10:12 doniwinata0309

hi @johncarl81 , we have found 2 files that causing error. it is something like this:

@Parcel
public class ExampleClass<T extends Serializable> {
    protected String titleExample;
  
   //remove this, build success
    protected List<ParcelableClassExample<T>> testList;


    public List<ParcelableClassExample<T>> getChangeItems() {
        return null;
    }

    public void setChangeItems(List<ParcelableClassExample<T>> changeItems) {
        testList = changeItems;
    }

    public String getChangeTitle() {
        return titleExample;
    }

    public void setChangeTitle(String changeTitle) {
        titleExample = changeTitle;
    }
}

Do you know what might be wrong here ? Removing list object will not causing error. I am still working to make sample, don't know why it cannot be repro on the sample.

doniwinata0309 avatar Jan 10 '19 14:01 doniwinata0309

Ah, it's because Parceler doesn't know what to do with the generic type here... it's undefined in terms of this particular class. Do you marshall (call Parcels.wrap/unwrap) ExampleClass directly or do you marshal subclasses of it?

johncarl81 avatar Jan 10 '19 17:01 johncarl81

Ah, interesting, it seems it's failing on lookup up the generic for the collection type:

List<ParcelableClassExample<T>>

Now, I think this is something to fix...

johncarl81 avatar Jan 10 '19 22:01 johncarl81

Thanks @johncarl81, we marshal the class directly.

doniwinata0309 avatar Jan 11 '19 01:01 doniwinata0309

Hi @johncarl81 , this object also causing the same error on our project List<T> itemList;

doniwinata0309 avatar Jan 11 '19 07:01 doniwinata0309

For the time being, you can get around this issue by subclassing your class with generic parameters, specifying the concretes:

@Parcel
public class StringExampleClass extends ExampleClass<String> {}

This has its limitations - particularly when dealing with multiple classes in an object graph. But, I hope it would be a crutch for this issue until we can figure out a fix.

johncarl81 avatar Jan 11 '19 22:01 johncarl81

Thank for your suggestion @johncarl81 ! Will try wether we can pass specifying object or not in our case. Hopefully it will fixed soon since we need to use AGP 3.3, it requires parceler 1.1.12 because of androidX migration. let me know if i can do something to help you.

doniwinata0309 avatar Jan 12 '19 03:01 doniwinata0309

If you could test a potential fix, I'd greatly appreciate it! I hope to spend some timr on it this weekend.

On Fri, Jan 11, 2019, 8:08 PM doniwinata0309 <[email protected] wrote:

Thank for your suggestion @johncarl81 https://github.com/johncarl81 ! Will try wether we can pass specifying object or not in our case. Hopefully it will fixed soon since we need to use AGP 3.3, it requires parceler 1.1.12 because of androidX migration. let me know if i can do something to help you.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/johncarl81/parceler/issues/355#issuecomment-453714648, or mute the thread https://github.com/notifications/unsubscribe-auth/AAKMqY8UfuJcDXyXxlMZ_LFnA9eMiFDwks5vCVG_gaJpZM4XDWSd .

johncarl81 avatar Jan 12 '19 03:01 johncarl81

It is working perfectly @johncarl81 . i just trying your suggestion, so we put @parcel on subclass instead of the main class right ? so far it is good, but will need to test them on monday.

doniwinata0309 avatar Jan 12 '19 03:01 doniwinata0309