【发布时间】:2010-11-12 08:14:15
【问题描述】:
我需要哪些Felix 包才能开始使用? downloads page 上有无数这样的人。
(p.s. 与 OSGI 的“奥斯卡”参考框架相比,这个名称是对 Odd Couple + 的引用吗?这是我在阅读其中一个教程页面后想到的,我从中得到了笑声。)
【问题讨论】:
-
+1 表示问题的 Oscar/Felix 部分。
标签: java osgi apache-felix
我需要哪些Felix 包才能开始使用? downloads page 上有无数这样的人。
(p.s. 与 OSGI 的“奥斯卡”参考框架相比,这个名称是对 Odd Couple + 的引用吗?这是我在阅读其中一个教程页面后想到的,我从中得到了笑声。)
【问题讨论】:
标签: java osgi apache-felix
您只需在以下位置下载“主”发行版:
http://apache.mirror.clusters.cc/felix/felix-1.8.0.tar.gz
(这是第一个下载链接)
解压,进入felix-1.8.0目录,输入
$ java -jar bin/felix.jar
Felix 控制台将出现,输入“帮助”开始
【讨论】:
我的回答实际上不是关于“如何”,而是关于“在哪里”看。
我强烈推荐 Walid Joseph Gédéon 的 OSGi 和 Apache Felix 3.0 初学者指南。我在使用 Equinox,但在这本书切换到 Felix 之后,它写得非常好。
关于 felix 包,我最常运行 Gogo Comman+Runtime+Shell、iPOJO、Log 和 Http(码头/白板)。
P.S.:只是添加另一本书,我认为它将成为经典 - OSGI in Action。您可以从 manning 购买抢先体验。结合官方 OSGI 规范,这将奠定坚实的基础。
【讨论】:
实际上,这取决于您要实现的目标。您可以从主要的 Felix 发行版开始,它已经包含 OSGi Bundle Repository implementation,因此您将能够下载和启动其他 Felix 捆绑包。
相反,您可以使用Pax Runner 下载并运行 Felix(或其他 OSGi 实现),您可以轻松控制要运行的 OSGi 包集。
还有一种方法是用ServiceMix Kernel启动Felix(叫Karaf),它基于Felix,但是包含更多的bundle,支持热部署
【讨论】:
Felix main(系统捆绑包 - 0 级)将始终存在且处于活动状态。 其余的它可以是完全随机的,但为了方便起见,有一些概要包。 OSGi 联盟将纲要包定义为 R4 规范的一部分。
我个人喜欢“声明式服务”概要包 (在 org.apache.felix.scr-1.0.8.jar 中称为 SCR) 它使真正的服务架构成为可能。 还有 iPOJO、spring-DM 等,但它对我来说是 DS
您可以阅读 OSGI R4 规范中的概要包。
【讨论】: