Search code examples
javanetbeansjava-menetbeans-12

Netbeans 12.5 can't install Java ME plugin


Below is what I'm using,

  • OS: macOS Big Sur
  • NetBeans: 12.5
  • Java: 7 / 8 / 17

I'm trying to install Java Me pluginenter image description here

Upon installation, i kept getting thisenter image description here

I have tried using java 7, 8 and 17 (I'm using jenv to control java version).. Nothing works.. Could anyone please help?

EDIT: Below is the log i get when i trying to install (using jdk17, I also checked the firewall is off)

java.io.FileNotFoundException: /Applications/NetBeans/Apache NetBeans 12.5.app/Contents/Resources/NetBeans/netbeans/mobility/modules/locale/org-netbeans-modules-mobility-jsr172_ja.jar (No such file or directory)
    at java.base/java.io.FileInputStream.open0(Native Method)
    at java.base/java.io.FileInputStream.open(FileInputStream.java:216)
    at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
    at org.netbeans.updater.UpdateTracking.getFileCRC(UpdateTracking.java:507)
[catch] at org.netbeans.updater.ModuleUpdater.unpack(ModuleUpdater.java:469)
    at org.netbeans.updater.ModuleUpdater.run(ModuleUpdater.java:117)
INFO [org.netbeans.updater]: File /Applications/NetBeans/Apache NetBeans 12.5.app/Contents/Resources/NetBeans/netbeans/mobility/update/download/org-netbeans-modules-mobility-jsr172.nbm deleted.
INFO [org.netbeans.updater]: Use XML Transformer: com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl@afcc1b6
INFO [org.netbeans.updater]: File /Applications/NetBeans/Apache NetBeans 12.5.app/Contents/Resources/NetBeans/netbeans/mobility/update_tracking/org-netbeans-modules-mobility-jsr172.xml modified.
INFO [org.netbeans.updater]: File installed /Applications/NetBeans/Apache NetBeans 12.5.app/Contents/Resources/NetBeans/netbeans/mobility/update_tracking/org-netbeans-modules-mobility-jsr172.xml@1,637,575,673,151
INFO [org.netbeans.updater]: File /Users/awesomeee/Library/Application Support/NetBeans/12.5/config/Modules/org-netbeans-modules-mobility-jsr172.xml_hidden deleted.
INFO [org.netbeans.updater]: File /Applications/NetBeans/Apache NetBeans 12.5.app/Contents/Resources/NetBeans/netbeans/mobility/update/download/additional_information.xml deleted.
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-modules-mobility-licensing.jar could not be found, ignoring...
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-modules-j2me-common-ant.jar could not be found, ignoring...
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-api-mobility.jar could not be found, ignoring...
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-modules-mobility-jsr172.jar could not be found, ignoring...
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-modules-mobility-end2end.jar could not be found, ignoring...
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-modules-j2me-kit.jar could not be found, ignoring...
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-modules-j2me-project.jar could not be found, ignoring...
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-modules-mobility-databindingme.jar could not be found, ignoring...
INFO [org.netbeans.core.startup.NbEvents]: Warning: the module /modules/org-netbeans-modules-mobility-cldcplatform.jar could not be found, ignoring...
INFO [org.netbeans.modules.autoupdate.services.InstallSupportImpl]: Timeout waiting for loading module [email protected]
INFO [org.netbeans.modules.autoupdate.ui.wizards.InstallStep]: timeout of loading Java ME Web Service Clients (JSR 172)[org.netbeans.modules.mobility.jsr172/1.31.1]
org.netbeans.api.autoupdate.OperationException[INSTALL]: timeout of loading Java ME Web Service Clients (JSR 172)[org.netbeans.modules.mobility.jsr172/1.31.1]
    at org.netbeans.modules.autoupdate.services.InstallSupportImpl$3.call(InstallSupportImpl.java:431)
    at org.netbeans.modules.autoupdate.services.InstallSupportImpl$3.call(InstallSupportImpl.java:291)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[catch] at java.base/java.lang.Thread.run(Thread.java:833)


Solution

  • The OP's error message "The plugin install found problem timeout of loading Java ME Web Service Clients" is misleading, since it suggests that there may be a network issue. However, the FileNotFoundException in the NetBeans log file shows that the real cause is that the plugin installer is failing because it can't locate the file unpack200.exe to unpack the downloaded plugins.

    This issue arises if NetBeans is running on JDK 14 or greater, since unpack200.exe was removed in that release. See JEP 367: Remove the Pack200 Tools and API for details.

    A workaround in the past has been to temporarily run NetBeans with an earlier JDK which contained unpack200.exe, typically JDK 8 or JDK 11. Then, once the plugins had been successfully installed, just revert to using your JDK >= 14. That approach is documented in great detail here. Most of the individual steps in that answer remain valid, but there is no longer any need to revert to running NetBeans on a JDK < 14 because there is a simpler approach available.

    When running NetBeans 12.5 on a JDK >= 14, the plugin installer now detects that unpack200.exe is missing after downloading the plugins, and invites you to provide an instance of it:

    chooseunpack200

    Clicking the Choose Unpack200... button in the lower left of that screen opens the following dialog:

    selectFile

    Navigate to any instance of unpack200.exe on your machine. It will reside in the bin directory for any JDK release < 14. Once the plugin installer has located an instance of unpack200.exe it can convert the downloaded plugins into jar files to complete the plugin installation process.

    Notes:

    • Although this question is about the Java ME plugins, the same approach applies when running NetBeans on a JDK >= 14, and installing any plugin that uses the Pack200/Unpack200 APIs.

    • NetBeans asking for a location of unpack200.exe only happens once. Thereafter it uses the location you provided initially by default.