我按照这个 Bndtools 教程http://bndtools.org/tutorial.html来实现一个简单的问候服务。
首先,我在 bundle 中创建了这个接口org.example.api
:
package org.example.api;
public interface Greeting {
String sayHello( String name );
}
然后是在 bundle 中实现上述接口的服务org.example.impl
:
package org.example.impl;
import org.osgi.service.component.annotations.Component;
@Component
public class GreetingComponent implements Greeting {
public String sayHello( String name ) {
return "Hello " + name;
}
}
当然,Greeting
无法解析类型。我的问题来了:将包导入声明添加到impl
捆绑包的指定方式是什么?我知道我可以手动编辑bnd.bnd
以在指令org.example.impl
中包含必要的包。-buildpath
但这相当不方便:记住包名,导航到适当的 bnd 文件,编辑指令,保存。这里不是添加缺少的导入的更方便的方法吗?
我一直在寻找类似快速修复(Ctrl+1)的东西,但这似乎不存在。