How are you launching equinox? Are you certain the config.ini is getting read? Try using a VM option to be sure (-Dosgi.compatibility.bootdelegation=true). This option is set to true by default when launched with the equinox launcher (org.eclipse.equinox.launcher). But it is set to false when using the OSGi launching API (org.osgi.framework.launch) or just using "java -jar org.eclipse.osgi.jar". See https://bugs.eclipse.org/bugs/show_bug.cgi?id=178477
Tom
From: "." <[email protected]>
To: Equinox development mailing list <[email protected]>,
Date: 06/23/2012 02:12 PM
Subject: Re: [equinox-dev] Some Packages must be imported outside of
Eclipse
Hello Tom,
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.
I added osgi.compatibility.bootdelegation=true to the config.ini in the
configuration directory and the packages are still not available. E.g. I
get a Class Not Found Exception in a bundle that uses QName when
javax.xml.namespace is not imported.
Moreover, according to this site
http://help.eclipse.org/help32/topic/org.eclipse.platform.doc.isv/reference/misc/runtime-options.html
osgi.compatibility.bootdelegation is set to true by default, so this
should also applies to "outside of Eclipse".
PDE also has tools for generating your import statements.
I only know the "Automated Management of Dependencies" (AMD) function
(section) in die bundle manifest editor. Are more tools available in the
PDE?
Rene
-------- Original Message --------
Subject: Re: [equinox-dev] Some Packages must be imported outside of
Eclipse
From: Thomas Watson <[email protected]>
To: Equinox development mailing list <[email protected]>
Date: Thu Jun 21 2012 15:01:24 GMT+0200
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
Inactive hide details for BJ Hargrave---06/20/2012
04:17:10
PM---This is why you should use something like
bndtools to
make youBJ Hargrave---06/20/2012 04:17:10 PM---This is why you should
use something like bndtools to make your bundles. Hand editing your
manifest's package statements is not
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 office: +1 386 848
Staff Member, IBM 1781
OSGi Fellow and CTO mobile: +1 386 848
of the 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
_______________________________________________
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
