我正在开发 Lotus Notes 插件(Eclipse 3.4),需要依赖外部 SDK/连接器来获取一些 Java 依赖项和配置文件。
似乎为了正常工作,连接器安装文件夹中的文件必须位于类路径中。由于我不知道它安装在哪里,因此我必须依赖安装期间设置的环境变量(“IBMCMROOT”),其中包含该文件夹。
有没有办法使用Windows环境变量来定义eclipse插件的类路径?我尝试过在 list 中使用变量:
Bundle-ClassPath: external:$IBMCMROOT$/lib/cmb81.jar,
$IBMCMROOT$/lib/cmbsdk81.jar,
$IBMCMROOT$/lib/db2jcc.jar,
.,
$IBMCMROOT$/lib/guava-15.0.jar,
$IBMCMROOT$/lib/log4j-1.2.17.jar
这会导致 ClassNotFoundExceptions...
最佳答案
不,Bundle-ClassPath 不以这种方式使用。它只能引用包本身内的路径。
为了从未知位置的任意外部 JAR 文件加载类,您需要使用 URLClassLoader
。
关于java - Eclipse 3.4 - 带有环境变量的外部 JAR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19546611/