我一直在嘗試使用apache felix和osgi的一些例子。我製作了服務(服務提供商)界面並將其實施。之後,我設法創建一個jar文件,其中包含通過清單文件提供的相關信息。接下來,我需要爲消費者部分創建一個jar文件。但是,當我嘗試編譯消費者部分時,它會給出錯誤,因爲包不存在。我需要將接口導入到使用者(服務使用者)。軟件包不存在在Apache Felix OSGI
這是我的代碼(服務消費者的Activator.java)
package mtitassignmentone.serviceconsumer;
import java.util.Scanner;
import java.util.StringTokenizer;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
import org.osgi.util.tracker.ServiceTracker;
**import mtitassignmentone.serviceprovider.service.BookService;**
public class Activator implements BundleActivator {
private BundleContext m_context = null;
private ServiceTracker m_tracker = null;
public void start(BundleContext context) throws Exception {
m_context = context;
// Create a service tracker to monitor dictionary services.
m_tracker = new ServiceTracker(m_context, m_context.createFilter(BookService.class.getName()), null);
m_tracker.open();
BookService book= (BookService) m_tracker.getService();
book.getName();
}
public void stop(BundleContext context) {
}
}
進口mtitassignmentone.serviceprovider.service.BookService;它是編譯時拋出的錯誤。但該文件存在。如何克服這一點?
感謝我用現在Eclipse創建包其工作 –