He'll probably need to do that in the bootclasspath <sigh/>

At one time I actually believed that javax.* packages would always be
"extra", meaning that 1) no java.* class would depend on a javax.* class
and 2) therefore you could safely put all the javax.* classes into one or
more jar-files in the ext/ directory.  And then ...
java.security.cert.X509CertSelector turned out to have a reference to
javax.security.auth.x500.X500Principal. java.awt refers to all manner of
stuff (and vice versa).  Total dependency spaghetti.

No wonder project jigsaw is taking so long ...

> Can you manually set the class path in your bundle to pick up your
> classes first?
>
> I know that's a bit of a hack around, but if it works at least you can
> continue on...
>
> Cheers,
> Jamie
>
> On Tue, Apr 21, 2015 at 11:13 AM, David Bosschaert
> <[email protected]> wrote:
>> I guess what I'm looking for is a bundle that I can install in an OSGi
>> framework without having to change any startup properties etc...
>>
>> On 21 April 2015 at 14:39, Jamie G. <[email protected]> wrote:
>>> Great question.
>>>
>>> Can you override/replace it via the karaf etc/jre.properties file?
>>>
>>> Cheers,
>>> Jamie
>>>
>>> On Tue, Apr 21, 2015 at 10:53 AM, David Bosschaert
>>> <[email protected]> wrote:
>>>> Hi all,
>>>>
>>>> Apologies for posting to the Karaf list as this is not really a Karaf
>>>> issue, but I this list may contain people that might have come across
>>>> this issue as well.
>>>>
>>>> I have some code that runs in OSGi that uses
>>>> javax.activation.DataHandler. As this is javax... you should be able
>>>> to provide your own bundle providing these classes. So I have a bundle
>>>> that provides an alternative javax.activation.DataHandler. Now it
>>>> turns out that this class has a dependency on
>>>> java.awt.datatransfer.DataFlavor, a java.awt class! The DataFlavor
>>>> code is kicked in from DataHandler, but then DataFlavor tries to load
>>>> some classes too, in my case it tries to load DataHandler again. The
>>>> code in DataFlavor tries to load classes from the System Classloader
>>>> first, so it finds the javax.activation.DataHandler in the JRE and
>>>> loads that -> boom LinkageError.
>>>>
>>>> I was wondering whether there are any 'fixed' versions of
>>>> javax.activation that don't expose this behaviour and work properly in
>>>> a modular environment like OSGi.
>>>>
>>>> Many thanks,
>>>>
>>>> David
>


Reply via email to