pmd / pmd-bluej

Other
6 stars 2 forks source link

BlueJ Won't Start #2

Closed Mojac closed 6 years ago

Mojac commented 6 years ago

On line 20 of "PMDExecExt.java" the method call "bluej.getCurrentFrame()" returns a null. BlueJ updated their source code, version 4.0.0 changed this methods return. This method now returns a null and this prevents PMD from working in BlueJ.

https://github.com/pmd/pmd-bluej/blob/ff382e9249816c532a23586c426ff7e3ecdd6af4/src/main/java/net/sourceforge/pmd/PMDExecExt.java#L20

adangel commented 6 years ago

Stacktrace from bluej-debuglog.txt (Go to Help -> About BlueJ to find the location of this file):

ExtensionWrapper.safeStartup: Class=net.sourceforge.pmd.PMDExecExt Exception=null
java.lang.NullPointerException
    at bluej.extensions.BlueJ.getCurrentFrame(BlueJ.java:272)
    at net.sourceforge.pmd.PMDExecExt.startup(PMDExecExt.java:20)
    at bluej.extmgr.ExtensionWrapper.safeStartup(ExtensionWrapper.java:545)
    at bluej.extmgr.ExtensionWrapper.newExtension(ExtensionWrapper.java:221)
    at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:169)
    at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
    at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
    at bluej.Main.lambda$new$1(Main.java:127)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
    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)