在IntelliJ IDEA 11中运行Apache Felix 4.0.2

根据这篇文章 ,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框架定义

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

OSGi框架选择

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

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

Intellij IDEA OSGi Facet配置

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

Intellij IDEA OSGi运行配置