SWTClassLoader fails on Java 9 and later
The SWTClassLoader provided by swtjar.jar fails as of Java 9 because URLClassLoader is no longer a child of ClassLoader by default. Details: https://community.oracle.com/thread/4011800
The new way is to create the URLClassLoader with specific parent object: https://stackoverflow.com/questions/60764/how-should-i-load-jars-dynamically-at-runtime
But this seems to produce other issues, when attempting to load internal Jar-in-Jars via the rsrc-protocol: https://stackoverflow.com/questions/6947246/jar-in-jar-class-loading-issue The parent, which is created prior to the URLClassLoader does not know about the SWT-jars, but the URLClassLoader does not know about application classses (versys). So when we attempt to load the versys.Versys main class, this gets delegated to the parent (ClassLoader), which then does not know about the SWT classes imported by that class...
Apparently, the Jar-file needs to be packaged differently so that the ClassLoader will eventually find both the SWT-Jars and application classes. The JAr-target in this Ant-File seems to be a working example: https://github.com/mchr3k/org.intrace/blob/master/org.intrace/build.xml#L79
I hate regressions...