PDE also has tools for generating your import statements. Eclipse is launched with a backwards compatibility flag that is allowing your bundles to load classes from the packages provided by the VM (osgi.compatibility.bootdelegation=true). When you launch equinox "outside of eclipse" this option is not set by default.
Tom
From: BJ Hargrave/Austin/IBM@IBMUS
To: Equinox development mailing list <[email protected]>,
Date: 06/20/2012 04:17 PM
Subject: Re: [equinox-dev] Some Packages must be imported outside of
Eclipse
This is why you should use something like bndtools to make your bundles.
Hand editing your manifest's package statements is not a good idea.
--
BJ Hargrave
Senior Technical Staff office: +1 386 848
Member, IBM 1781
OSGi Fellow and CTO of the mobile: +1 386 848
OSGi Alliance 3788
[email protected]
From: "." <[email protected]>
To: Equinox development mailing list <[email protected]>,
Date: 2012/06/20 17:10
Subject: Re: [equinox-dev] Some Packages must be imported outside of
Eclipse
Sent by: [email protected]
Hello Richard,
thanks for your answer.
If it's not recommend to change the property to make packages like
javax.* directly available: Is it possible in Eclipse to automatically
import such packages when I use classes from them? I want to avoid the
effort to manually check all my classes for imports from everything
except java.* and manually adding these packages to the bundle manifest
before I export the bundle as JAR.
Regards,
Rene
-------- Original Message --------
Subject: Re: [equinox-dev] Some Packages must be imported outside of
Eclipse
From: Richard S. Hall <[email protected]>
To: Equinox development mailing list <[email protected]>
Date: Wed Jun 20 2012 22:26:55 GMT+0200
> On 6/20/12 16:17 , . wrote:
>> Hello,
>>
>> if I start a OSGi bundle in Eclipse (Equinox) not only java.*, but
>> also packages like javax.* are directly available and therefore must
>> be not imported in the bundle manifest.
>
> I would expect that you can import the javax.* packages, but you are
> correct that you shouldn't/can't import the java.* packages.
>
>> In contrast, when I run a bundle outside of Eclipse (also in Equinox;
>> with startup.bat/startup.sh and config.ini) all used packages except
>> java.* MUST be imported, otherwise it results to Class Not Found
>> Exceptions.
>>
>> What is the reason why e.g. javax.* are not available outside of
>> Eclipse without importing them? Is it possible, e.g. with a parameter
>> in the config.ini, to make these packages directly available or in
>> other words create the same runtime environment like in Eclipse?
>
> The reason is historical, I'd guess.
>
> You can configure this via the org.osgi.framework.bootdelegation
> framework configuration property, but I'd recommend against doing so.
> Double check, but I'd expect that you can import the javax.* packages
> in Equinox when running in Eclipse...you should always import
> everything except java.* packages...
>
> -> richard
>
>>
>> Thanks in advance!
>>
>> Regards,
>> Rene
>> _______________________________________________
>> equinox-dev mailing list
>> [email protected]
>> https://dev.eclipse.org/mailman/listinfo/equinox-dev
>
>
> _______________________________________________
> equinox-dev mailing list
> [email protected]
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
>
_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev
<<inline: graycol.gif>>
<<inline: ecblank.gif>>
_______________________________________________ equinox-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/equinox-dev
