如何在不同的 OSGi 包中实现接口?
How to implement an interface in a different OSGi bundle?
我才刚刚开始,我认为这是一个非常基本的问题,我什至无法在网上找到任何关于它的信息,但我终其一生都无法解决这个问题。
我有两个单独的捆绑包,一个是 API,一个是服务包。在 API 包中的一个包中,我有一个名为 "HelloAPI":
的接口
package com.example.osgi.api;
public interface HelloAPI {
public void sayHello();
}
在服务包中,我有一个 class,代码如下:
package com.example.osgi.service;
public class HelloImpl {
implements HelloAPI {
System.out.println("Hello World!");
}
}
但是 eclipse 突出显示了 "implements" 关键字下的错误,即:
令牌语法错误 "implements",需要接口。
我看不出我做错了什么,谁能指出我正确的方向?谢谢
我非常同意这些评论——学习 Java 语言的基础知识非常重要 在 处理更高级的主题(如模块化)之前。
作为参考,下面是您的接口的正确实现:
public class HelloImpl implements HelloAPI {
public void sayHello() {
System.out.println("Hello World!");
}
}
我才刚刚开始,我认为这是一个非常基本的问题,我什至无法在网上找到任何关于它的信息,但我终其一生都无法解决这个问题。
我有两个单独的捆绑包,一个是 API,一个是服务包。在 API 包中的一个包中,我有一个名为 "HelloAPI":
的接口package com.example.osgi.api;
public interface HelloAPI {
public void sayHello();
}
在服务包中,我有一个 class,代码如下:
package com.example.osgi.service;
public class HelloImpl {
implements HelloAPI {
System.out.println("Hello World!");
}
}
但是 eclipse 突出显示了 "implements" 关键字下的错误,即:
令牌语法错误 "implements",需要接口。
我看不出我做错了什么,谁能指出我正确的方向?谢谢
我非常同意这些评论——学习 Java 语言的基础知识非常重要 在 处理更高级的主题(如模块化)之前。
作为参考,下面是您的接口的正确实现:
public class HelloImpl implements HelloAPI {
public void sayHello() {
System.out.println("Hello World!");
}
}