HEADS-UP: jfxrt.jar moving to jre/lib/ext

Tom Schindl tom.schindl at bestsolution.at
Thu Jan 24 11:17:21 PST 2013

As far as I can tell currently my solution (Equinox Hooks) would still
work because of an implementation detail of Equinox classloader hiearchy
- to make it short it skips the Extclasspath in the default
configuration - but I really really want to get rid of this hack in
Java8 and once JavaFX is JSRed in Java9 remove it completely.

Other OSGi-Container users might not be that lucky (e.g. Felix ones),
they can't use swt and javafx together.

I can only agree with Kevin, that it was a bad idea from the beginning
to bundle the embed.swt code with the jfxrt.jar ;-)


Am 24.01.13 19:42, schrieb Richard Bair:
>>>> 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?

B e s t S o l u t i o n . a t                        EDV Systemhaus GmbH
tom schindl                 geschäftsführer/CEO
eduard-bodem-gasse 5-7/1   A-6020 innsbruck     fax      ++43 512 935833
http://www.BestSolution.at                      phone    ++43 512 935834

More information about the openjfx-dev mailing list