1

我试图要求一个带有 jruby 1.7.4 的 jar 并为 Windows 和 Linux 获得不同的结果。我的文件夹布局如下:

/current_folder
|--/lib
   |--lib.jar
   |--dep.jar

lib.jar 使用 dep.jar 中的一些类,并具有如下清单:

Manifest-Version: 1.0
Main-Class: lib.Main
Class-Path: dep.jar

当我运行 lib.jar 中包含的程序时,Windows 和 Linux 一切正常java -jar absolute/path/to/lib.jar

但是当我尝试以下操作时,它仅适用于 Linux。

  1. cdcurrent_folder.
  2. 运行jirb
  3. 执行require 'java'require 'absolute/path/to/lib.jar'
  4. 使用 lib.jar 中的类。

对于 Windows,它无法从 dep.jar 加载类并失败。

但是,如果 Windows Icdlib文件夹,一切都会重新开始工作。

那么,我做错了什么?我希望一切都能像在 Linux 上一样在 Windows 上工作。即,我希望将 lib.jar 的类路径保留在其清单中;从jirb.

4

0 回答 0