Java Manifest.mf 类路径问题

2023-12-13

我一直在尝试运行一个 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

and

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 文件包含我的主类的路径,所以这不是这里的问题。

您认为可能是什么问题?我已经关注这个东西太久了。 谢谢!


类路径中的条目要么是相对于它们嵌入的 JAR(您正在使用的),要么是 URL。为了使绝对路径正常工作,您需要将它们转换为 URL,例如,

file:/opt/sybase13/...

没有使用变量的机制。

虽然JAR规范没有说清楚,但是绝对file:方案 URL 在类路径属性中起作用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java Manifest.mf 类路径问题 的相关文章

随机推荐

  • 为什么我不能在 write-host 中使用 $_ ?

    我正在尝试将字符串数组通过管道传输到 write host 并显式使用 编写这些字符串 foo bar baz write host 但是 它失败了 输入对象无法绑定到命令的任何参数 因为该命令不采用管道输入 或者输入及其属性与采用管道输入
  • 如何向 FeathersJS 套接字连接添加参数

    我正在开发一个使用 FeathersJS 服务器的应用程序 以及一个使用 FeathersJS Socket io 客户端连接到服务器的 Electron 应用程序 我想使用 Electron 应用程序中的通道在服务器中的某些数据发生更改时
  • 将 python 中的数据框重塑为 3D

    我正在尝试将手写字符数据集重塑为 3D 形式 以便它可以与数字识别数据集连接起来 我尝试了多次 但我不知道如何做到这一点 实际的数字识别数据集的形状为 60000 28 28 字符识别数据集的形状为 372450 785 第一列是目标变量
  • 在 C++ 中从 YUV 转换为 RGB (android-ndk)

    我在 android 中开发 想要将相机的预览回调中的字节数组 YUV 格式 转换为 rgb 格式 我已经使用了这个答案中给出的函数 在Android中从视频图像获取帧 它在java中完美运行 但我的问题是我想在c 中创建该函数 我正在使用
  • mechanize (python) 单击 javascript 类型链接

    是否可以让 mechanize 跟随 javascript 类型的锚链接 我正在尝试使用 mechanize 和 beautifulsoup 登录 python 网站 这是锚链接 a href a
  • 如何在基于 Spring Java 的配置中放置带有正则表达式的 URL

    在 Spring Security XML 配置文件中 我有类似的内容
  • SQLite条件

    我只想将这个函数查询从navicat转换为sqlite查询 Select from tbl sample where ID 1 And IF RECEIPT MODE MANUAL DATE a MANUAL COLLECTION DATE
  • Karate API - 为什么响应不返回调用的功能文件

    我通过传递 un pwd 和端点 url 从后台标签下的另一个功能调用登录功能 如下所示 登录功能已成功运行 但其响应未返回到调用的功能文件 Add Feature Adding products Background table logi
  • java.util.date 错误?

    java util Date 是否有错误 在进行一些测试时 我将毫秒设置为 2147483647 应该给我一个日期 2038 01 19 03 14 07 但它返回的是 1970 01 25 20 31 23 还尝试了 4294967295
  • 不同环境下不同DB名的跨库查询?

    您将如何在不同环境中处理跨数据库查询 例如 db1 development 和 db2 development db1 product 和 db2 product 如果我想在开发过程中执行从 db2 到 db1 的跨数据库查询 我可以使用完
  • 使用 sqoop 导入 Hive 时出现文件存在错误

    我正在尝试将 Retail db 数据库表复制到我已经创建的 Hive 数据库中 当我执行以下代码时 sqoop import all tables num mappers 1 connect jdbc mysql quickstart c
  • 从连接表中过滤

    我在执行一个棘手的 SQL 查询时遇到了一些麻烦 在我的 MySQL 数据库中 有主题表 标签和标签主题来连接它们 我想获取共享相同指定标签的主题 例如 假设我有 3 个标签 id 分别为 1 2 和 3 我想获取与标签 1 2 和 3 关
  • JavaScript 定时器

    我正在尝试使以下 JavaScript 计时器只需单击一个按钮即可执行两个功能 一旦计时器启动 请单击 再次点击 它停止了 单击第三次 它会再次启动 依此类推 我在这里做错了什么 预先非常感谢您
  • Python列表理解-访问最后创建的元素

    是否可以访问 a 中生成的前一个元素列表理解 我正在研究一些玩具加密的东西 将密钥指定为任意大整数 初始化值和元素列表作为要加密的消息 我需要将每个元素与前一个加密元素和密钥进行异或 下面的循环就可以了 previous initializ
  • 由于大文件上传而重置连接,但配置应允许上传

    我在尝试在 MVC 项目中上传大于 4 兆的文件时遇到错误 对于较小的文件 上传效果很好 在网上查了一下 我发现我应该添加
  • Rails 3 - 如何处理 PG 错误不完整的多字节字符

    在 Rails 3 2 应用程序 Ruby 1 9 2 中 我收到以下错误 mobile users update 中发生 PGError 不完整的多字节字符 这些是 Postgres 错误 但是在开发和测试模式下测试时我遇到类似的 SQL
  • 如何避免db not close和cursor异常

    02 02 14 31 34 048 WARN SQLiteCompiledSql 359 Releasing statement in a finalizer Please ensure that you explicitly call
  • 修复 StackOverflow 错误

    我开发了一个应用程序 其中有 4 个选项卡 A B C D 每个选项卡都包含一个活动 在第四个选项卡 D 中 我添加了一个 ActivityGroup 其中还有 3 个活动 X Y Z 在第四个选项卡中 我添加了活动组 但出现 StackO
  • 保持输入占位符始终可见

    我正在尝试对网站中的所有输入进行样式设置 当它们具有值或具有焦点时 占位符将成为输入的标题 它移动到输入的顶部 但浏览器的默认行为会隐藏当有数据时占位符 我真的想远离 JS 解决方案 当前结果 我的CSS input focus webki
  • Java Manifest.mf 类路径问题

    我一直在尝试运行一个 jar 文件 我们称之为 test jar 它在 Unix 系统上使用 Sybase jconn3 jar 我创建了一个 MANIFEST MF 文件 其中包含以下内容 Class Path SYBASE jConne