NPE

Issue #2 duplicate
Former user created an issue

null java.lang.NullPointerException at org.pmesmeur.sketchit.diagram.UmlModuleClassDiagram.getOutputFile(UmlModuleClassDiagram.java:28) at org.pmesmeur.sketchit.diagram.UmlDiagram.generate(UmlDiagram.java:21) at org.pmesmeur.sketchit.diagram.UmlDiagramsGenerator.generateModuleClassDiagram(UmlDiagramsGenerator.java:44) at org.pmesmeur.sketchit.diagram.UmlDiagramsGenerator.generateClassDiagrams(UmlDiagramsGenerator.java:35) at org.pmesmeur.sketchit.SketchIt.actionBody(SketchIt.java:41) at org.pmesmeur.sketchit.SketchIt.access$000(SketchIt.java:8) at org.pmesmeur.sketchit.SketchIt$1.run(SketchIt.java:31) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1010) at org.pmesmeur.sketchit.SketchIt.runInsideAnIntellijWriteAction(SketchIt.java:29) at org.pmesmeur.sketchit.SketchIt.actionPerformed(SketchIt.java:23) at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:220) at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:237) at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:301) at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:307) at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:104) at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:291) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$0(ActionMenuItem.java:111) at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:88) at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:111) at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:120) at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:122) at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:111) at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:528) at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:48) at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:548) at java.awt.Component.processMouseEvent(Component.java:6541) at javax.swing.JComponent.processMouseEvent(JComponent.java:3325) at java.awt.Component.processEvent(Component.java:6306) at java.awt.Container.processEvent(Container.java:2237) at java.awt.Component.dispatchEventImpl(Component.java:4897) at java.awt.Container.dispatchEventImpl(Container.java:2295) at java.awt.Component.dispatchEvent(Component.java:4719) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467) at java.awt.Container.dispatchEventImpl(Container.java:2281) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4719) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764) at java.awt.EventQueue.access$500(EventQueue.java:98) at java.awt.EventQueue$3.run(EventQueue.java:715) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90) at java.awt.EventQueue$4.run(EventQueue.java:737) at java.awt.EventQueue$4.run(EventQueue.java:735) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:734) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:779) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:716) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:395) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Comments (7)

  1. Philippe MESMEUR repo owner

    Thank you for your feedback

    It seems that the method com.intellij.openapi.module.Module.getModuleFile() returns null!

    I did all my tests in a maven project so each module has a pom.xml and getModuleFile() never returned null. Can you tell me more about your project?

    How is it built? What is its structure? I would really appreciate a light sample

    Regards Philippe

  2. Isaac Agung Nugroho

    I also experience the same NPE. My project is multi module gradle project, and structured as follows:

    /root
       /api
          build.gradle
          /src
             /main
             /test
       /service
          build.gradle
          /src
             /main
             /test
       build.gradle
    

    Hope this would help.

    It's a great plugin, anyway!

  3. Philippe MESMEUR repo owner

    OK Would it be possible for you to send me a small sample that reproduces the problem?

    In order to generate the plantUML diagram, my code relies on Idea APIs.

    Regards, Philippe

  4. YOUR BROTHER

    Same NPE for me. I just downloaded plugin and did "Tools -> Sketch It!" inside a class.

    BTW This is a very cool plugin in perspective. Hope you fix it.

  5. Marcel Stör

    Same issue here with a Gradle project.

    Creating a skeleton pom.xml with only the GAV properties fixed this issue temporarily - but only for generating the top-level class diagram (module). Generating a diagram for a package or a class in a package yields the same exception even with that POM present.

  6. Log in to comment