稍微有些背景:我们正在使用Apache Felix实现OSGI来开发我们的Web开发工具(Adobe CQ5,其内部构建于Apache felix上)。我们有几个我们自己的捆绑包(大约10个),并且他们每个都被配置为一个项目。OSGI Apache felix-热部署支持
问题:在开发生命周期中,我们对bundle进行更改,然后使用ant脚本创建bundle并将其部署到felix中。我想知道是否有某种方法可以在开发模式下对我所做的更改进行热部署,从而节省开发人员的时间。
基于我的研究,我们可以使用felix文件安装,它将监视文件夹以更改任何包并自动部署它们。但这又意味着我需要运行ant脚本来构建jar文件并将其移动到文件安装正在监视的自动部署文件夹中。有没有更好的/快速的方法来实现这一目标?该脚本目前需要大约10秒(大约)来编译类,创建osgi特定的元数据文件,将类+元数据捆绑到新的jar中。有没有办法进行热部署,以便我对java文件所做的任何更改都会自动反映到该包中?
非常感谢
我会看看bndtools和评论。计算机是相当现代的,并且在最大(〜5 MB)时,包的大小是几兆字节。可能是构建脚本需要少1或2秒。不知道为什么。 – Jai
嗨尼尔,非常感谢指点bndtools。我想这对我的要求是理想的。但是,我无法安装插件。我收到一条错误消息:“无法读取存储库http://bndtools-updates.s3.amazonaws.com/plugin/biz.aQute.bndlib_2.1.0.20130426-122213.jar。Read readd out”。这可以帮助你做些什么吗?非常感谢。 – Jai