Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error with providing custom tags #47

Closed
andrikeev opened this issue Nov 10, 2016 · 6 comments
Closed

Error with providing custom tags #47

andrikeev opened this issue Nov 10, 2016 · 6 comments
Assignees

Comments

@andrikeev
Copy link

I encountered a problem when writing custom tags provider on Kotlin, and decided to check whether it works on Java, so I wrote a test Activity:

interface TestView extends MvpView {
}
public class TestActivity extends MvpAppCompatActivity implements TestView {

    @InjectPresenter(type = PresenterType.GLOBAL)
    TestPresenter presenter;

    @ProvidePresenter(type = PresenterType.GLOBAL)
    TestPresenter providePresenter() {
        return new TestPresenter();
    }

    @ProvidePresenterTag(presenterClass = TestPresenter.class, type = PresenterType.GLOBAL)
    String provideTag() {
        return "test";
    }

    class TestPresenter extends MvpPresenter<TestView> {
    }
}

But I still get the same error when building:

Error:22:34:35.548 [ERROR] [system.err] java.lang.NullPointerException
22:34:35.549 [ERROR] [system.err] 	at com.arellomobile.mvp.compiler.PresenterBinderClassGenerator.bindTagProvidersToFields(PresenterBinderClassGenerator.java:160)
22:34:35.549 [ERROR] [system.err] 	at com.arellomobile.mvp.compiler.PresenterBinderClassGenerator.generate(PresenterBinderClassGenerator.java:104)
22:34:35.549 [ERROR] [system.err] 	at com.arellomobile.mvp.compiler.PresenterBinderClassGenerator.generate(PresenterBinderClassGenerator.java:51)
22:34:35.549 [ERROR] [system.err] 	at com.arellomobile.mvp.compiler.MvpCompiler.generateCode(MvpCompiler.java:142)
22:34:35.549 [ERROR] [system.err] 	at com.arellomobile.mvp.compiler.MvpCompiler.processInjectors(MvpCompiler.java:130)
22:34:35.549 [ERROR] [system.err] 	at com.arellomobile.mvp.compiler.MvpCompiler.throwableProcess(MvpCompiler.java:100)
22:34:35.549 [ERROR] [system.err] 	at com.arellomobile.mvp.compiler.MvpCompiler.process(MvpCompiler.java:84)
22:34:35.549 [ERROR] [system.err] 	at org.jetbrains.kotlin.annotation.AbstractAnnotationProcessingExtension.doRound(AnnotationProcessingExtension.kt:312)
22:34:35.549 [ERROR] [system.err] 	at org.jetbrains.kotlin.annotation.AbstractAnnotationProcessingExtension.process(AnnotationProcessingExtension.kt:252)
22:34:35.549 [ERROR] [system.err] 	at org.jetbrains.kotlin.annotation.AbstractAnnotationProcessingExtension.doAnnotationProcessing(AnnotationProcessingExtension.kt:239)
22:34:35.549 [ERROR] [system.err] 	at org.jetbrains.kotlin.annotation.AbstractAnnotationProcessingExtension.analysisCompleted(AnnotationProcessingExtension.kt:131)
22:34:35.549 [ERROR] [system.err] 	at org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(TopDownAnalyzerFacadeForJVM.java:160)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.resolve.jvm.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegrationWithCustomContext(TopDownAnalyzerFacadeForJVM.java:79)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler$analyze$1.analyze(KotlinToJVMBytecodeCompiler.kt:362)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.cli.common.messages.AnalyzerWithCompilerReport.analyzeAndReport(AnalyzerWithCompilerReport.kt:126)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.analyze(KotlinToJVMBytecodeCompiler.kt:355)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules(KotlinToJVMBytecodeCompiler.kt:130)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:183)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:52)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.cli.common.CLICompiler.exec(CLICompiler.java:199)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.compileNotIncremental(Tasks.kt:594)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.callCompiler(Tasks.kt:419)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.gradle.tasks.KotlinCompile.callCompiler(Tasks.kt:151)
22:34:35.550 [ERROR] [system.err] 	at org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile.execute(Tasks.kt:117)
22:34:35.550 [ERROR] [system.err] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
22:34:35.550 [ERROR] [system.err] 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
22:34:35.551 [ERROR] [system.err] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
22:34:35.551 [ERROR] [system.err] 	at java.lang.reflect.Method.invoke(Method.java:498)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:245)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:221)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:232)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:66)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
22:34:35.551 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
22:34:35.552 [ERROR] [system.err] 	at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:153)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.internal.Factories$1.create(Factories.java:22)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:150)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
22:34:35.553 [ERROR] [system.err] 	at org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run(BuildModelActionRunner.java:46)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.tooling.internal.provider.runner.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:58)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.554 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.util.Swapper.swap(Swapper.java:38)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.555 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
22:34:35.556 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
22:34:35.556 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
22:34:35.556 [ERROR] [system.err] 	at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:237)
22:34:35.556 [ERROR] [system.err] 	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
22:34:35.556 [ERROR] [system.err] 	at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
22:34:35.556 [ERROR] [system.err] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
22:34:35.556 [ERROR] [system.err] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
22:34:35.556 [ERROR] [system.err] 	at java.lang.Thread.run(Thread.java:745)
22:34:35.556 [ERROR] [system.err] Moxy compilation failed; see the compiler error output for details (java.lang.NullPointerException)
22:34:35.637 [ERROR] [org.jetbrains.kotlin.gradle.tasks.KotlinCompile_Decorated] e: C:\Users\vandrikeev\Projects\test\app\src\main\java\ru\andrikeev\android\test\application\App.kt: (1, 1): Some error(s) occurred while processing annotations. Please see the error messages above.
22:34:35.637 [ERROR] [org.jetbrains.kotlin.gradle.tasks.KotlinCompile_Decorated] e: C:\Users\vandrikeev\Projects\test\app\src\main\java\ru\andrikeev\android\test\application\App.kt: (10, 52): Unresolved reference: DaggerAppComponent
22:34:35.637 [ERROR] [org.jetbrains.kotlin.gradle.tasks.KotlinCompile_Decorated] e: C:\Users\vandrikeev\Projects\test\app\src\main\java\ru\andrikeev\android\test\application\App.kt: (24, 24): Unresolved reference: DaggerAppComponent
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] 
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] FAILURE: Build failed with an exception.
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] 
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] * What went wrong:
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] Execution failed for task ':app:compileDebugKotlin'.
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] > Compilation error. See log for more details
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] 
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] * Try:
22:34:35.641 [ERROR] [org.gradle.BuildExceptionReporter] Run with --stacktrace option to get the stack trace. 


It seems to me that the problem with Kotlin annotations processing, but i'm not sure and have no idea how to fix it.

@senneco senneco added the bug label Nov 11, 2016
@senneco
Copy link
Collaborator

senneco commented Nov 11, 2016

Hi,

Could you check https://github.com/Arello-Mobile/Moxy/tree/master/sample-kotlin ? It's works without bugs.

@senneco senneco self-assigned this Nov 11, 2016
@senneco senneco added help wanted and removed bug labels Nov 11, 2016
@SavinMike
Copy link
Contributor

Your TestPresenter is inner class. Moxy doesn't support inner Presenters and Views. Try to move it to separate class. It should help.

@andrikeev
Copy link
Author

andrikeev commented Nov 11, 2016

@senneco I'll check out this sample. But only difference I see is Kotlin version (1.0.5, I'm on 1.0.4)

@SavinMike , it's just example for shortness. I tried ton of variants before post the issue.

@senneco
Copy link
Collaborator

senneco commented Nov 11, 2016

@valeragit did you execute the example?

@andrikeev
Copy link
Author

andrikeev commented Nov 11, 2016

@senneco Yes I did and got same error

@andrikeev
Copy link
Author

andrikeev commented Nov 11, 2016

Problem solved!
It was apply plugin: 'kotlin-kapt' in build.gradle =\

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants