我希望更高效地使用karaf开发OSGi包。
我的理想程序是:
目前,我使用karaf程序集进行生产,但这不允许我观看本地maven回购,因此每个构建周期都需要停止并组装完整的karaf发行版,并再次运行它,这是缓慢和低效的。
我还有一个描述所有依赖项的特性,如果我可以重用它,而不是手动声明所有依赖项,那就太棒了。
有什么建议可以用空手道来完成吗?
附注:这个过程能用Gradle完成吗?
发布于 2017-06-20 08:24:54
最简单的方法是启动karaf清理并安装您的功能。你当然可以写这部分。
然后输入bundle:watch *。这将监视本地maven回购快照包中的更改。
如果现在对单个包项目执行mvn clean install,则包将自动更新。
你也可以用karaf debug开始空手道。这将在启用远程调试的情况下启动karaf。因此,您可以简单地使用eclipse对端口5005执行调试会话。这也与bundle很好地结合在一起:查看上面的内容。在调试过程中,您可以更改代码并在bundle项目上运行mvn干净安装,并继续使用已更改的包进行调试。当然,您可以松掉已更改的包的状态,但是系统的其余部分没有变化。
但是要注意:仅当您的包未部署到karaf中的系统文件夹时,watch才能工作。因此,如果您启动了一个定制的karaf发行版,那么您的包将不会被更新。这可以通过简单地从system中删除这些文件来解决,因为它们随后将从本地maven repo中获取。当您使用karaf自己的代码时,这是非常方便的。
https://stackoverflow.com/questions/44647183
复制相似问题