【发布时间】:2013-11-08 18:19:39
【问题描述】:
我正在学习使用 apache felix 处理 osgi 包。 我正在使用maven-bundle-plugin 来生成清单文件。
我创建了第一个仅包含一个接口的捆绑包,并将其导出以供其他人使用。 第二个包包含一个实现在第一个包中创建的接口的类。 我将第二个包配置为导入第一个包导出的包。
当我编译第二个包时,我收到一条错误消息,告诉我他无法解析接口。
我不确定我是否理解捆绑包的工作原理......
非常感谢...
[编辑] 更多信息: 使用 maven 编译时出现错误:
[INFO] Compilation failure
....../ServeurImpl.java:[17,36] error: cannot find symbol
ServeurImpl.java(第 17 行):
public class ServeurImpl implements Serveur {
Serveur 是在第一个包中创建的接口。
【问题讨论】:
-
请发布有关错误的更多详细信息。这是一个maven错误吗?日食错误?您所做的在概念上是正确的,您的错误必须在其他地方。您的 impl pom(不仅是清单)应该对 API pom 具有 maven 依赖性
-
感谢您的回复。我添加了一些信息。
-
您确定在您的 ServeurImpl pom 中依赖于 Serveur 工件吗?
-
需要注意的是,在这个阶段,错误与OSGi无关,它是一种运行时技术。由于构建配置中缺少依赖项,您所拥有的是构建错误。在你真正构建了一些东西之前,不要太担心 OSGi。