【问题标题】:Karaf error installing OSGi bundle listed in startup.properties with urlKaraf 安装带有 url 的 startup.properties 中列出的 OSGi 包时出错
【发布时间】:2019-05-06 16:49:49
【问题描述】:

Karaf 出现时出现以下错误:

使用 url 安装 startup.properties 中列出的捆绑包时出错 - mvn:org.apache.karaf.service/org.apache.karaf.service.guard/3.0.6 = 10

startup.properties的内容如下:

mvn\:org.ops4j.pax.url/pax-url-aether/2.4.5 = 5
mvn\:org.ops4j.pax.url/pax-url-wrap/2.4.5/jar/uber = 5
mvn\:org.ops4j.pax.logging/pax-logging-api/1.8.4 = 8
#mvn\:org.ops4j.pax.logging/pax-logging-service/1.8.4 = 8
mvn\:org.ops4j.pax.logging/pax-logging-logback/1.8.4 = 8
mvn\:org.apache.karaf.service/org.apache.karaf.service.guard/3.0.6 = 10
mvn\:org.apache.felix/org.apache.felix.configadmin/1.8.4 = 10
mvn\:org.apache.felix/org.apache.felix.fileinstall/3.5.2 = 11
mvn\:org.ow2.asm/asm-all/5.0.3 = 12
mvn\:org.apache.aries/org.apache.aries.util/1.1.1 = 20
mvn\:org.apache.aries.proxy/org.apache.aries.proxy.api/1.0.1 = 20
mvn\:org.apache.aries.blueprint/org.apache.aries.blueprint.cm/1.0.7 = 20
mvn\:org.apache.aries.proxy/org.apache.aries.proxy.impl/1.0.4 = 20
mvn\:org.apache.aries.blueprint/org.apache.aries.blueprint.api/1.0.1 = 20
mvn\:org.apache.aries.blueprint/org.apache.aries.blueprint.core.compatibility/1.0.0 = 20
mvn\:org.apache.aries.blueprint/org.apache.aries.blueprint.core/1.4.4 = 20
mvn\:org.apache.karaf.deployer/org.apache.karaf.deployer.spring/3.0.6 = 24
mvn\:org.apache.karaf.deployer/org.apache.karaf.deployer.blueprint/3.0.6 = 24
mvn\:org.apache.karaf.deployer/org.apache.karaf.deployer.wrap/3.0.6 = 24
mvn\:org.apache.karaf.region/org.apache.karaf.region.core/3.0.6 = 25
mvn\:org.apache.karaf.features/org.apache.karaf.features.core/3.0.6 = 25
mvn\:org.apache.karaf.deployer/org.apache.karaf.deployer.features/3.0.6 = 26
mvn\:jline/jline/2.13 = 30
mvn\:org.jledit/core/0.2.1 = 30
mvn\:org.apache.karaf.features/org.apache.karaf.features.command/3.0.6 = 30
mvn\:org.apache.karaf.bundle/org.apache.karaf.bundle.core/3.0.6 = 30
mvn\:org.apache.karaf.bundle/org.apache.karaf.bundle.command/3.0.6 = 30
mvn\:org.apache.karaf.shell/org.apache.karaf.shell.console/3.0.6 = 30
mvn\:org.apache.karaf.jaas/org.apache.karaf.jaas.modules/3.0.6 = 30
mvn\:org.apache.karaf.jaas/org.apache.karaf.jaas.config/3.0.6 = 30
mvn\:org.apache.sshd/sshd-core/0.14.0 = 30
mvn\:org.apache.karaf.shell/org.apache.karaf.shell.help/3.0.6 = 30
mvn\:org.apache.karaf.shell/org.apache.karaf.shell.table/3.0.6 = 30
mvn\:org.apache.karaf.system/org.apache.karaf.system.core/3.0.6 = 30
mvn\:org.apache.karaf.system/org.apache.karaf.system.command/3.0.6 = 30
mvn\:org.apache.karaf.shell/org.apache.karaf.shell.commands/3.0.6 = 30
mvn\:org.apache.aries.quiesce/org.apache.aries.quiesce.api/1.0.0 = 30

知道可能是什么原因吗?

【问题讨论】:

    标签: osgi apache-karaf osgi-bundle karaf karaf-maven-plugin


    【解决方案1】:

    etc/startup.properties 中指定的所有 URI(使用方案 mvn:)都由 Karaf 在启动时直接翻译。

    实际上解决mvn: URI 是不可能的,因为mvn\:org.ops4j.pax.url/pax-url-aether/2.4.5 捆绑包是可以执行这种解决方案的,我们在这里会遇到鸡与蛋的问题。

    因此,Karaf 将这些 mvn: URI 转换为指向 ${karaf.home}/systemfile: URI。例如mvn\:org.ops4j.pax.logging/pax-logging-logback/1.8.4file:${karaf.home}/system/org/ops4j/pax/logging/pax-logging-logback/1.8.4/pax-logging-logback-1.8.4.jar

    如果未找到,则未解决。请确保您在 Karaf 的system/ 目录中拥有捆绑包org.apache.karaf.service.guard-3.0.6.jar

    【讨论】:

    • 感谢您的回复。我会检查的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-31
    • 1970-01-01
    • 2022-08-05
    • 2016-06-11
    • 2016-06-26
    相关资源
    最近更新 更多