Search code examples
jwrapper

latest JWrapper (00036138363) fails to produce launchable programs on windows


If you build SampleApp with the latest (i.e. May 25th's) JWrapper, it won't start on windows. According to SampleApp-SampleApp..log, it appears to be trying to load a MacOSX class (JWOSXEventListener) at runtime:

87342876 (+    0) STDOUT test
87342876 (+    0) STDERR test
87342876 (+    0) [LogFolderCleaner] Keeping Wrapper-2015-05-26-17-42-08-852.log
87342876 (+    0) [LogFolderCleaner] Keeping SampleApp-SampleApp-2015-05-26-17-42-22-876.log
87342876 (+    0) [LogFolderCleaner] Keeping GenericUpdater-2015-05-26-17-42-18-945.log
87342876 (+    0) [JWrapper] App Bundle Name:    SampleApp
87342876 (+    0) [JWrapper] App Bundle Version: 00036171806
87342876 (+    0) [JWrapper] Virtual App:        SampleApp
87342876 (+    0) [JWrapper] Update URL:         http://0.0.254.254/
87342876 (+    0) [JWrapper] App Folder:         C:\Users\christop\AppData\Roaming\JWrapper-SampleApp\JWrapper-SampleApp-00036171806-complete
87342876 (+    0) [JWrapper] JRE:                C:\Users\christop\AppData\Roaming\JWrapper-SampleApp\JWrapper-Windows32JRE-00036170991-complete
87342876 (+    0) [JWrapper] JRE Version:        1.7.0_05
87342876 (+    0) [JWrapper] Proxy:              null
87342876 (+    0) [EDT Exception Printer] Catching all EDT and uncaught exceptions and printing
87342892 (+   16) [JWrapperNative] Detected 32-bit architecture
87342892 (+    0) [JWrapperNative] Detected Windows OS
87342892 (+    0) [JWrapper] Is Process DPI Aware: true
87342892 (+    0) [JWrapper] sun.java2d.dpiaware: null
87342892 (+    0) [JWDetectedProxy] No proxy configuration found to load.
87342892 (+    0) JVM Option: -Xmx256m
87342892 (+    0) [JWrapper] JVM Home: C:\Users\christop\AppData\Roaming\JWrapper-SampleApp\JWrapper-Windows32JRE-00036170991-complete
87342908 (+   16) [PermissionsUtil] Setting permissions for C:\Users\christop\AppData\Roaming\JWrapper-SampleApp\JWApps\JRE-LastSuccessfulOptions-JWrapper-Windows32JRE-00036170991-complete to F
87342908 (+    0) [PermissionsUtil] Finished setting permissions.
87342908 (+    0) [JWrapper] Wrote JVM Options OK
87342908 (+    0) [AWT/Swing Exception] (STDERR) Exception on thread main (java.lang.NoClassDefFoundError: jwrapper/hidden/events/JWOSXEventListener)
87342923 (+   15) java.lang.NoClassDefFoundError: jwrapper/hidden/events/JWOSXEventListener
87342923 (+    0)   at java.lang.Class.forName0(Native Method)
87342923 (+    0)   at java.lang.Class.forName(Unknown Source)
87342923 (+    0)   at jwrapper.JWrapper.main(JWrapper.java:290)
87342923 (+    0) Caused by: java.lang.ClassNotFoundException: jwrapper.hidden.events.JWOSXEventListener
87342923 (+    0)   at java.net.URLClassLoader$1.run(Unknown Source)
87342923 (+    0)   at java.net.URLClassLoader$1.run(Unknown Source)
87342923 (+    0)   at java.security.AccessController.doPrivileged(Native Method)
87342923 (+    0)   at java.net.URLClassLoader.findClass(Unknown Source)
87342923 (+    0)   at java.lang.ClassLoader.loadClass(Unknown Source)
87342923 (+    0)   at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
87342923 (+    0)   at java.lang.ClassLoader.loadClass(Unknown Source)
87342923 (+    0)   ... 3 more

Solution

  • This is where JWrapper loads the app class, the exception is due to the class failing to load, this is due to a bug in the sample app code which references a class which has been moved in the latest JW build.