ともさんのHP >プロブラミング >自作JavaLibrary >Jarファイルから別のJarを呼び出す
Jarファイルから別のJarを呼び出す方法
外部Jarファイルをライブラリとして使っています。
Eclipseでデバッグする段階では、Eclipseに登録しておけばいいのですが、jarファイル化して使用する場合、および配布して他の人に使ってもらう場合にうまくパスを通すことが出来ずに困っていました。
いろいろやってみてうまく出来た方法があるので紹介します。
おそらくいろいろな方法があって、もっと用方法もあると思います。
マニフェストファイルにパスを記述
自分で作ったJarファイル内に外部Jarを取り込みたかったのですが、結局できず、外にフォルダを作って置くことにしました。
配布する場合は外部Jarファイルも一緒に配布します。
サンプルプログラム
ごく簡単なプログラムを作って試験しました。
GaibuJarTestというクラスを作り、その中でtestjarを呼び出します。
testjarクラスは、testという文字を表示するだけのものです。
package tomojavalib.jartest;
public class GaibuJarTest {
public static void main( String[] s ){
testjar t = new testjar();
t.test();
}
}
package tomojavalib.jartest;
public class testjar {
public void test(){
System.out.println("test");
}
}
デバッグ中は同じパッケージにあるので、普通に動きます。
次に、testjar.javaだけをTest.jarというファイルにjar化します。
GaibuJarTest.avaも単独でGaibuJarTest.jarにします。このままではGaibuJarTestからtestjarは読めないので、
マニフェストファイルを作り、下記のように記述してGaibuJarTest.jarに同梱します。
Manifest-Version: 1.0
Class-Path: ./jar/Test.jar
Main-Class: tomojavalib.jartest.GaibuJarTest
これで正常に動くようになります。
2行目の、「Class-Path: ./jar/Test.jar」がパス設定。
GaibuJarTest.jarと同じホルダに「jar」というホルダを設けて、Test.jarをその中に置きます。
最終更新日: 2019-06-25 08:36:22
ともさんのHP >プロブラミング >自作JavaLibrary >Jarファイルから別のJarを呼び出す
ツイート