我一直在尝试运行一个 jar 文件——我们称之为 test.jar——它在 Unix 系统上使用 Sybase jconn3.jar。
我创建了一个包含以下内容的 MANIFEST.MF 文件:
Class-Path: $SYBASE/jConnect-6_0/classes/jconn3.jar commons-net-1.3.0.jar
这给出了 ClassNotFoundError。$SYBASE 是指向 /opt/sybase13 的系统变量;我还尝试了以下方法:
Class-Path: /opt/sybase13/jConnect-6_0/classes/jconn3.jar commons-net-1.3.0.jar
和
Class-Path: opt/sybase13/jConnect-6_0/classes/jconn3.jar commons-net-1.3.0.jar
但是,如果我将 jconn3.jar 文件从 $SYBASE/jConnect-6_0/classes 复制到与 test.jar 相同的目录,并将我的 MANIFEST.MF 更新为如下所示:
Class-Path: jconn3.jar commons-net-1.3.0.jar
应用程序按预期运行。
现在,我已经能够通过在本地复制 jconn3.jar 文件来验证它是否有效;我的 MANIFEST.MF 文件包含我的主类的路径,所以这里没有问题。
你认为可能是什么问题?我已经看这个东西太久了。谢谢!