0

我在 Android 应用程序中将 Apache Felix 作为捆绑加载器运行。由于那里无法访问 Jaca SecurityManager,我正在寻找一种解决方案来防止捆绑包访问某些包,例如 java.io.*。只编写一个自定义类加载器,在请求此类类时返回 null 或抛出异常的想法似乎是最好的,但是,我找不到如何为 Felix 管理的所有包设置全局类加载器。

4

1 回答 1

0

尝试设置此属性:

org.osgi.framework.system.packages - 指定应通过 System Bundle 从框架类加载器导出的包的逗号分隔列表。框架会将其设置为合理的默认值。如果指定了值,它将替换任何默认值。

默认情况下,所有 java.* 类对任何包都是可见的。如果您覆盖它,您可以更改该行为。尝试导入您未包含的包(例如 java.io)的包在安装期间将无法解析,因此无法启动。

有关更多信息,请参见:http: //felix.apache.org/site/apache-felix-framework-configuration-properties.html

于 2013-03-15T20:45:35.777 回答