【问题标题】:Felix 'pref' bundle requires 'log version >=1.3', but D/L 'log' bundle version = 1.0Felix 'pref' bundle 需要 'log version >=1.3',但 D/L 'log' bundle version = 1.0
【发布时间】:2009-08-05 14:30:07
【问题描述】:

Felix 下载页面显示 日志包版本 1.0.0 首选项捆绑版本 1.0.2

但首选项需要日志包版本 >= 1.3

它只是想了解“首选项”的工作原理, 所以欢迎任何日志兼容包:)

问候。

【问题讨论】:

  • 出于某种原因,我遇到了一个不再存在的问题。我没有保存任何错误日志。但它现在可以工作了:)

标签: osgi bundle apache-felix


【解决方案1】:

我认为您将 Felix 日志包版本 (1.0.0) 与所需的 OSGi 日志服务版本 (1.3) 混淆了。这类似于Tomcat版本和它支持的Servlet API版本的区别。

Felix Log 1.0.0 提供 org.osgi.service.log;version=1.3 所以你应该没问题。

一般来说,一个包的版本是不相关的,因为 OSGi 包不直接依赖于其他包,而是依赖于它们提供的包版本。

(我需要检查,但您可能还需要定义日志接口的 OSGi 服务纲要 JAR 文件,Felix Log 只是该服务的一种可能实现)。

【讨论】:

  • 我检查了我的日志包的清单,你是对的。它说 Export-Package: org.osgi.service.log;uses:="org.osgi.framework";version="1.3" 并且 Prefs manifest 说 Import-Package: org.apache.felix.prefs,org.osgi。 framework;version="1.3",org.osgi.service.log;version="1.3",org.osgi.service.prefs;version="1.1",org.osgi.util.tracker;version="1.3" 奇怪.. 我确实看到了一个运行时错误,但是所有的输出都证明它已经消失了 :( 我已经让它运行了,没有使用其他包?!仍然,谢谢你的信息
猜你喜欢
  • 1970-01-01
  • 2012-08-15
  • 1970-01-01
  • 2013-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-28
  • 1970-01-01
相关资源
最近更新 更多