问题标签 [apache-karaf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cxf - 您如何调试 CXF 端点发布?
鉴于 fuse 源的 apache-servicemix-4.4.1-fuse-00-08 中的“cxf-osgi”示例,使用 maven 3.0.3 构建,将其部署到 apache karaf 2.2.4 和 CXF 2.4.3 时,Web 服务是从未发布过,对 CXF servlet (http://localhost:8181/cxf/) 永远不可见。karaf 日志中没有错误。如何调试这种行为?
osgi - 带有普通 Maven JAR 的 OSGi 捆绑存储库
我正在努力寻求一种解决方案,将 Web 应用程序作为捆绑包部署到 Virgo 3.0.1.RELEASE。我的情况是:
- 我使用Maven Bundle Plugin来生成清单。
- 我使用Maven WAR 插件排除了所有 JAR 依赖项。
- 我需要命令 Virgo 在本地存储库中托管普通的Maven JAR 工件。作为一个实例,Apache Karaf 和 PAX可以提供纯 JAR 文件作为 OSGi 包。
所以,
- 关于如何配置 Virgo 以托管 Maven 存储库纯JAR 的任何想法?
- 一般来说,根据您的经验,使用现成的 Maven 存储库并将其作为 OBR 托管的最佳解决方案是什么?
提前致谢。
osgi - Karaf 和 OBR 中的功能有什么区别
我正在研究部署和更新 OSGI(特别是 Karaf)应用程序的方法。似乎有几种选择。一是使用 The OSGi Bundle Repository (OBR),二是使用 Karaf 中的 Features,三是使用Karaf Cave。
我不太确定这些选项有什么不同。他们似乎都在做同样的事情。它们只是相同功能的不同实现吗?有人可以解释差异或提供一些建议吗?
osgi - OSGi Bundle.update() 方法是否也下载新的依赖项
我和这里的人有类似的目标:Using OSGi to implement auto-update
本质上,我希望能够自动更新我的应用程序中的捆绑包。上面的帖子提到您可以只调用 Bundle.Update(),但是如果自上一个版本以来添加了一些依赖项,它还会下载新的依赖项吗?如果是这样,它在哪里寻找它们?
此外,该解决方案与供应管理工具的区别是什么,如下所述:Karaf 和 OBR 中的功能有什么区别
也就是说,你为什么要使用 OBR 之类的东西而不是这个 Bundle.update() 方法。
apache-felix - How do I programatically invoke a Felix/Karaf shell command?
I want to automatically invoke the Karaf "dev:watch" command if I detect that I'm running in a dev environment. I've considered adding dev:watch *
directly to etc/shell.init.script but I don't want it to run unconditionally. So, I'm considering creating a simple service that checks a Java property (something simple like -Ddevelopment=true
) and invokes org.apache.karaf.shell.dev.Watch itself. I think I can ask OSGi for a Function instance with (&(osgi.command.function=watch)(osgi.command.scope=dev))
but then I need to create a mock CommandSession just to invoke it. That just seems too complicated. Is there a better approach?
java - 将 Jacoco 与 Pax-Exam 一起使用
我目前正在开发基于 OSGi 模型的应用程序。我的应用程序的所有测试过程都是使用 Pax-Exam 完成的,它使用 Karaf 创建了一个新的 JVM。
我尝试将 Jacoco 用于我的集成测试代码覆盖率,但它似乎不起作用。当我使用它(使用 maven 插件)时,创建的 jacoco.exec 文件是空的。
由于 Pax-Exam 正在创建一个新的 JVM 来通过 Karaf 进行测试,因此我使用 javaagent 设置了一个 Pax-Exam 选项,以便为将执行测试的新 JVM 使用完全相同的 arg 行。不幸的是,它不起作用。
我已经尝试在没有所有 Pax-Exam/Karaf/OSGi 部分的情况下使用 Jacoco,它运行良好,但我不知道如何使它与我的 OSGi 包一起使用。
我希望有人可以帮忙!
java - 寻求有关使用蓝图以编程方式访问 ServiceMix 捆绑包状态信息的指导
我们正在运行Apache ServiceMix 4 ESB,它运行基于OSGi的Apache Karaf容器。OSGi 提供了在 ServiceMix 控制台中公开的工具,用于报告安装在容器中的捆绑包的状态信息:
我搜索了高低。现在我要问:是否有人知道任何工作示例、使用 API 的指南或其他从 ESB 中运行的代码中访问此信息的指南?理想情况下,我想:
- 确定安装了哪些捆绑包;
- 监控已识别捆绑包的状态;并且,至少,
- 动态停止/卸载并启动/重新安装已识别的捆绑包,
请分享这方面的任何可用信息,或者只是任何可以开始更好地研究它的途径。
谢谢。
osgi - 卡拉夫发展
我目前正在为 karaf 开发捆绑包并且有一些问题......
我写了一个基于 cxf 的包/webservice,我尝试在 karaf 中部署它,但它无法启动该包,因为它无法解析某些包,例如
org.osgi.framework.BundleException:捆绑包org.springframework.aop [56]中未解决的约束:无法解决56.0:缺少要求[56.0]包;(&(package=org.aopalliance.aop)(version>=1.0.0)(!(version>=2.0.0)))
所以这里有一个问题,这个包依赖来自spring-aop(3.1.0.RELEASE),那么问题出在哪里呢?缺少什么依赖?我该如何解决这些问题?
在那种情况下,我并没有清楚地了解开发过程。我应该在部署中部署所有丢失的捆绑包吗?因为我想让第三方库与我开发的包分开。我必须部署哪些捆绑包?这是一个反复试验的过程吗?有没有一种通用的方法可以让 maven 做依赖项?
我发现了一个文件夹“系统”并在文档上读到它是一个像 maven 这样的存储库,是为了功能吗?
对于测试用例,我有一个带有一些预部署包的 karaf,并将我的 web 服务包放入其中,但再次出现异常......
引起:java.lang.ClassNotFoundException: javax.servlet.http.HttpServlet
缺少什么依赖?
我已经阅读了关于骆驼和卡拉夫的教程,但它没有解释部署的东西,所以有人能推荐我一个好的教程吗?
谢谢!克里斯
osgi - 如何在 apache karaf 中启动捆绑包
我想在启动 karaf 时启动 Camel 和 ActiveMQ,我发现的是 etc/org.apache.karaf.features.cfg,它列出了应该在启动期间启动的功能。
这对除“activemq-camel”之外的所有设备都适用(很公平,因为它不是一个功能)。要安装 apache-camel 包,我必须运行以下命令:
它可以工作,但我宁愿让它在启动时运行。我能否以某种方式在启动时安装 activemq-camel 包而不为其创建自定义功能?
osgi - Felix/Karaf 开发者:观看
我在 karaf 容器中使用“dev:watch *”来简化我的测试。
目前,我将所有捆绑包部署为“xyz.SNAPSHOT” - 并且它们被正确拾取。
问题:如果我制作已发布的捆绑包(没有这个“.SNAPSHOT” - 这个 dev:watch 也可以工作吗?