我知道在 OSGI 包中使用外部库有两种方法。因为只有我的包需要 lib(例如 google-gson),所以我试图将它放在Bundle-ClassPath
(manifest.mf)中。但是,每当我在 Knopflerfish 中运行捆绑包时,我都会得到Exception in thread "Thread-74" [stderr] java.lang.NoClassDefFoundError: com/google/gson/Gson
.
由于我是 OSGI 的新手,所以我尝试按照说明从这里创建一个捆绑包,使用一个build.xml
用于编译的地方,我还包含了 lib(不知道这是否正确)。所以这个库出现在三个不同的地方,项目类路径、包类路径(manifest.mf)和build.xml。
如果有人能给我提示如何使图书馆工作,我会很高兴。提前致谢!