java - 在 IntelliJ IDEA 11 中运行 Apache Felix 4.0.2

标签 java intellij-idea osgi apache-felix

根据这个post , IDEA 使用 Osmorc运行 OSGi 框架。反过来,它使用 Pax Runner启动不同的框架实现。

IDEA 11 中的工具链只能运行 Apache Felix 到 3.0.2,但我必须运行 4.0.2 版本。可能吗? IDEA 是否存在其他 OSGi 框架启动器?

最佳答案

您可以从插件+项目设置中配置 Osmorc 使用的 OSGI 框架。 我使用 IntelliJ IDEA 11.1.2 和 Osmorc 1.4.2。

这是我将 OSGI 容器(在 IDE 设置-->OSGi)配置到一些本地的屏幕截图 安装 Apache Felix 4.0.1。

OSGi Framework Definiton

您还可以定义自定义框架/容器,然后选择所需的 在项目设置中使用的 OSGI 框架-->OSGI 如下所示:

OSGi Framework selection

为了创建运行配置,您首先需要创建一些 OSGi 方面。 希望您也使用 maven 和 maven-bundle-plugin 这将大大 减少您需要执行的配置量(因为 OSmorc 会自动与您的 pom.xml 同步),但即使您不这样做,您也可以手动编辑用于创建 bundle 的信息。

因此,您接下来需要做的是创建一些 OSGi 方面。转到项目“结构-->构面” 并为您希望创建的每个包添加一个新的 OSGi 方面。如果你打开了自动检测,那么这些方面可能已经存在了。如果没有,请手动添加它们,然后根据您的需要配置它们,如以下示例所示。

Intellij IDEA OSGi Facet Configuration

最后编辑“运行配置”并添加新的 OSGi 运行配置。 选择您希望使用的框架和您希望启动的包以及 其他参数,如以下示例所示:

Intellij IDEA OSGi Run Configuration

关于java - 在 IntelliJ IDEA 11 中运行 Apache Felix 4.0.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11018923/

相关文章:

eclipse - OSGI(Eclipse RCP)下的Log4j

java - Android 支持库 : getDrawable independent if vector or not

java - 通过应用名称获取另一个应用的包名

java - JAVA 污染源

java - Aries NamespaceHandler 获取 Bean 的引用

java - 如何从命令行运行 osgi 模块?

java - 安卓工作室;任务 ':baseGameUtils:compileReleaseJava' 执行失败

Android Studio 不创建主类和布局文件

Android Studio 的 JavaScript 功能

java2smali 1.6 插件不执行任何操作