I think it is reasonable to allow someone to hide exports from the system bundle, but that doesn't mean that this process couldn't be improved. For example, we could introduce a new variable ${framework-exports} as an alias to what the framework exports, so then in our default properties file the system.packages could be written something like this:

org.osgi.framework.system.packages= ${dollar}{framework-exports} \
 ${dollar}{jre-${dollar}{java.specification.version}}

Thus making it easier for people who want to override system.packages by using our alias.

Of course, though, if you just want to add stuff to system packages, then you should be using system.packages.extra like others have suggested.

-> richard

On 10/27/15 10:21 , David Bosschaert wrote:
Yes, that's precisely what the
org.osgi.framework.system.packages.extra was designed for. That way
you don't need to remember what the framework puts on
org.osgi.framework.system.packages in order to augment it.

Best regards,

David

On 27 October 2015 at 14:18, Andy Lee <thelees.a...@gmail.com> wrote:
If you are trying to extend the set of packages exported by the system
bundle, you should use org.osgi.framework.system.packages.extra.  By
specifying org.osgi.framework.system.packages you are overriding the
default value used by the framework, and hence must include the packaged
that are expected to be supplied by the framework.

See
https://osgi.org/javadoc/r5/core/org/osgi/framework/Constants.html#FRAMEWORK_SYSTEMPACKAGES


--Andy



On Tue, Oct 27, 2015 at 10:00 AM, Balázs Zsoldos <balazs.zsol...@everit.biz>
wrote:

Hi,

I asked this 1-2 years ago, but I think it is worthy to  ask it again.

Are you sure that the set of system packages should include the OSGi core
packages?

In my understanding:

    - system packages are the ones coming from outside of the OSGi container
    - osgi core packages are offered by the framework bundle, but they are
    not system packages

In practice:

    - If I specify org.osgi.system.packages property for equinox, I do not
    have to define the packages implemented by the framework
    - If I specify the same property for felix, I must copy-paste the
    packages of osgi.core always

Do you think there is a use-case when osgi.core packages offered by the
framework should be excluded from the exported packages of the system
bundle? I think Equinox has the right behavior here.

Do you see any chance to change this behavior in the future?

Kind regards,
*Balázs **Zsoldos*

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org

Reply via email to