使用openNTF Domino API作为插件开发中的依赖项

时间:2014-09-10 12:27:42

标签: java osgi xpages xpages-extlib

我一直在使用openNTF Domino API(ODA)一段时间,我对它非常满意。事实上,我很高兴我想将它与我自己的OSGi插件一起用作依赖项,我遇到了麻烦。

以下是正在发生的事情。

  1. 当我刚刚启动插件并且不使用ODA中的任何东西时,一切都很好。我可以在Notes Designer中根据需要选择我的新库,我可以使用我的类,一切看起来都很好。
  2. 我做的第二件事是进入/META-INF/MANIFEST.MF并将org.openntf.domino标记为依赖项。从我所看到的,这是正确的插件,因为它包含ODA文档,视图,会话等我想要使用的类。如果我应该使用不同的插件,请告诉我。
  3. 我进入了扩展com.ibm.xsp.library.AbstractXspLibrary的类,我对Library.getDependencies()感到困惑。我不确定在这里包括什么来标记我对官方发展援助的依赖。我尝试了一些不同的字符串,但最后,我甚至不确定是否需要在此处将其标记为依赖。
  4. 我试过了:

    "org.openntf.domino"
    "org.openntf.domino.xsp"
    "org.openntf.domino.xsp.XspLibrary"
    

    我想我尝试过其他一些事情,但不能完全记住是什么。

    主要问题是我无法再在Notes Designer中选择我的插件库而且我无法使用它(显然)。所以我的问题是,如何正确地将我的依赖项添加到单独安装的其他插件?我不仅会使用ODA,还会使用ExtLibs。

    我非常感谢任何帮助!

1 个答案:

答案 0 :(得分:2)

我知道“org.openntf.domino.xsp”取决于“org.openntf.domino.plugin”,就像我认为您希望您的图书馆依赖ODA一样。它还取决于扩展库。看着这个,我的建议是尝试:

  1. 在plugin.xml,Dependencies选项卡上,添加“org.openntf.domino.xsp”。这告诉它要在服务器上查找插件,否则不要运行,在这种情况下我认为tell http osgi diag com.myplugin会抛出错误。 org.openntf.domino.xsp已经依赖于org.openntf.domino.plugin,因此这是您作为依赖项所需的唯一插件。
  2. 我认为你不需要勾选“Reexport this dependency”。如果您不想在服务器本身上安装ODA插件,我想你会这样做。此外,我认为您不需要在“运行时”选项卡上添加任何导出的包。
  3. 在getDependencies()中,添加“org.openntf.domino.xsp.XspLibrary”。这会在您加载XspLibrary时加载XspLibrary类。