ebresie / python4nb

This is a Python Plugin for Netbeans.
Apache License 2.0
13 stars 1 forks source link

0.3.0: Plugin Install Not Working Correctly #28

Closed ebresie closed 1 year ago

ebresie commented 1 year ago

When trying to install 0.3.0 release nbm on Netbeans 16-rc2, the functionality does not work as expected.

  1. Option...Python panel does not show any attributes.
  2. No "New Python" projects possible

Suspect some developmental changes or dependencies did not make it into the nbm build

ebresie commented 1 year ago

On IDE, Unexpected error shows indicating:

java.lang.Exception: got no controller from Python: null at org.netbeans.spi.options.AdvancedOption$1.call(AdvancedOption.java:126) at org.netbeans.spi.options.AdvancedOption$1.call(AdvancedOption.java:119) [catch] at org.netbeans.modules.options.AdvancedOptionImpl.create(AdvancedOptionImpl.java:79) at org.netbeans.modules.options.TabbedController.handleTabSwitched(TabbedController.java:191) at org.netbeans.modules.options.TabbedController.initTabbedPane(TabbedController.java:172) at org.netbeans.modules.options.TabbedController.getComponent(TabbedController.java:149) at org.netbeans.modules.options.CategoryModel$Category.getComponent(CategoryModel.java:409) at org.netbeans.modules.options.OptionsPanel.setCurrentCategory(OptionsPanel.java:228) at org.netbeans.modules.options.OptionsPanel.access$300(OptionsPanel.java:99) at org.netbeans.modules.options.OptionsPanel$CategoryButton.mouseReleased(OptionsPanel.java:1226) at java.awt.Component.processMouseEvent(Component.java:6539) at javax.swing.JComponent.processMouseEvent(JComponent.java:3318) at java.awt.Component.processEvent(Component.java:6304) at java.awt.Container.processEvent(Container.java:2239) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2297) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476) at java.awt.Container.dispatchEventImpl(Container.java:2283) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760) 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:74) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84) at java.awt.EventQueue$4.run(EventQueue.java:733) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74) at java.awt.EventQueue.dispatchEvent(EventQueue.java:730) at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205) 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)

ebresie commented 1 year ago

After further investigation, it seems the initial 16 rc2 environment was setup using JDK 8.

Once the /etc/netbeans.conf file's netbeans_jdkhome was set to the path of a version 11 JDK, it seemed to pickup the Python Plugin behavior including.

Should also note, initial startup will be slow as it tries to search through all of the filesystem for possible python platforms.

Recommend changing this logic to only by called during a "Search" action following initial setup.

ebresie commented 1 year ago

For additional Java issue details, see https://github.com/apache/netbeans/issues/4889