HEADS-UP: jfxrt.jar moving to jre/lib/ext
Richard Bair
richard.bair at oracle.com
Thu Jan 24 10:42:48 PST 2013
>>> 4) Because we still include the javafx.embed.swt package in jfxrt.jar -- see http://javafx-jira.kenai.com/browse/RT-23041 -- applications that access javafx.embed.swt.FXCanvas will need to put the swt.jar library on the boot classpath in order for it to run.
>>
>> Putting swt.jar on the normal class path won't cut it?
>
> If get classloaders right no.
>
> Bootclassloader
> + Extclassloader
> + ApplicationClassloader
>
> So Extclassloader can only see classes from Bootclassloader for normal
> Java-SWT apps SWT on the bootclassloader will do it, for SWT-OSGi apps
> (which is the majority out there) this will cause extrem troubles
> because they ship swt as an OSGi-Bundle and we'll suddenly have 2
> SWT-Jars on the classpath then:
>
> * FXCanvas will load the one from the bootclasspath
> * Java-Code will load the one from the OSGi-Application-Classpath
>
> => The application will blow up completely, so for SWT-OSGi-Application
> giving the advice to put it on the bootclasspath is a very bad idea.
Does this mean that you can't use the FXCanvas in an OSGI based application?
More information about the openjfx-dev
mailing list