- changed status to open
Crash: Cannot return null from a non-@Nullable @Provides method at IndexFrameModule_GetPopupBuilderFactory.proxyGetPopupBuilder
Issue #145
closed
java.lang.NullPointerException: Cannot return null from a non-@Nullable @Provides method
at dagger.internal.Preconditions.checkNotNull(Preconditions.java:48)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexframe.IndexFrameModule_GetPopupBuilderFactory.proxyGetPopupBuilder(IndexFrameModule_GetPopupBuilderFactory.java:32)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexframe.IndexFrameModule_GetPopupBuilderFactory.provideInstance(IndexFrameModule_GetPopupBuilderFactory.java:24)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexframe.IndexFrameModule_GetPopupBuilderFactory.get(IndexFrameModule_GetPopupBuilderFactory.java:20)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexframe.IndexFrameModule_GetPopupBuilderFactory.get(IndexFrameModule_GetPopupBuilderFactory.java:7)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexframe.IndexFrame_Factory.provideInstance(IndexFrame_Factory.java:59)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexframe.IndexFrame_Factory.get(IndexFrame_Factory.java:40)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexframe.IndexFrame_Factory.get(IndexFrame_Factory.java:10)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexframe.DaggerIndexFrameComponent.createFrame(DaggerIndexFrameComponent.java:72)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexfilter.IndexFilterController.<init>(IndexFilterController.java:52)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexfilter.IndexFilterController$Factory.create(IndexFilterController.java:90)
at org.bitbucket.mlopatkin.android.logviewer.ui.indexfilter.IndexFilterCollection.addFilter(IndexFilterCollection.java:47)
at org.bitbucket.mlopatkin.android.logviewer.filters.MainFilterController$BaseToggleFilter.addToCollection(MainFilterController.java:182)
at org.bitbucket.mlopatkin.android.logviewer.filters.MainFilterController.addNewDialogFilter(MainFilterController.java:100)
at org.bitbucket.mlopatkin.android.logviewer.filters.MainFilterController.access$500(MainFilterController.java:43)
at org.bitbucket.mlopatkin.android.logviewer.filters.MainFilterController$SavedDialogFilterData.appendMe(MainFilterController.java:239)
at org.bitbucket.mlopatkin.android.logviewer.filters.MainFilterController.<init>(MainFilterController.java:79)
at org.bitbucket.mlopatkin.android.logviewer.filters.MainFilterController_Factory.provideInstance(MainFilterController_Factory.java:60)
at org.bitbucket.mlopatkin.android.logviewer.filters.MainFilterController_Factory.get(MainFilterController_Factory.java:41)
at org.bitbucket.mlopatkin.android.logviewer.filters.MainFilterController_Factory.get(MainFilterController_Factory.java:11)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at org.bitbucket.mlopatkin.android.logviewer.ui.mainframe.DaggerMainFrameDependencies.getFilterCreator(DaggerMainFrameDependencies.java:97)
at org.bitbucket.mlopatkin.android.logviewer.ui.mainframe.DaggerMainFrameDependencies.getFilterPanel(DaggerMainFrameDependencies.java:170)
at org.bitbucket.mlopatkin.android.logviewer.MainFrame.initialize(MainFrame.java:220)
at org.bitbucket.mlopatkin.android.logviewer.MainFrame.<init>(MainFrame.java:121)
at org.bitbucket.mlopatkin.android.logviewer.Main.createAndShowWindow(Main.java:122)
at org.bitbucket.mlopatkin.android.logviewer.Main.<init>(Main.java:100)
at org.bitbucket.mlopatkin.android.logviewer.Main.lambda$main$0(Main.java:73)
at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
After changing Nullability annotations to CheckerFramework.
It turns out that Dagger still cannot handle type annotations 6 years after Java 8 release: https://github.com/google/dagger/issues/861
Comments (3)
-
reporter -
reporter - changed status to resolved
Fix
#145: Add dagger-compatible Nullable annotations where needed→ <<cset 90125dcb2d58>>
-
reporter - changed status to closed
- Log in to comment