0

クラスのロードに小さな問題があります。abc.jar という jar があり、その jar の下に libs/cde.jar という別の jar があります。私は、cde.jar を使用するその jar にクラスを作成しました。abc.jar を正しくパッケージ化し、依存する jar が /libs/cde.jar の下に正しくパッケージ化されていることを確認しました。

しかし、jar (abc.jar) を読み込んで cde.jar に依存するクラスを実行しようとすると、依存している cde.jar が見つかりません。どうすればそれができるかについての指針はありますか?OneJar などの他の jar ローダーを使用することはできません。可能であれば、純粋な Java クラスの読み込みで行う必要があります。「file:////C:/abc.jar!/libs/cde.jar」を使用してクラスパスに入れてみましたが、成功しませんでした

ありがとうマスティ

4

1 に答える 1

4

デフォルトでは、Java は組み込みの Jar (つまり、Jar 内の Jar) を処理できません。

このタイプの動作が本当に必要な場合は、OneJarを見てください。

それ以外の場合は、依存する Jar を外部に残し、ファイルClass-Path内の親 Jar の属性を介して依存関係を指定する必要があります。Manifest

于 2012-08-28T00:27:28.600 に答える