を試してみてください。
メインクラス属性を持つjarファイルにマニフェストファイルが追加されていることを確認してください。メインクラス:com.demo.TestJar
作成されたテストJavaプログラム:
package com.demo;
public class TestJar extends Object {
public static void main(String args[]) {
System.out.println("TestJar");
}
}
パッケージ次の行で
作成したマニフェストファイル:
マイステップと出力
jar:jar cvfm /home/user/TestJarOne.jar manifest.txt
テストプログラムの書き込み:
import java.io.BufferedInputStream;
import java.io.IOException;
public class TestJSS extends Object {
static int i = 0;
public static void main(String args[]) throws IOException, InterruptedException {
System.out.println("Calling jar");
Process p = Runtime.getRuntime().exec("java -jar /home/user/TestJarOne.jar arg1 arg2");
BufferedInputStream bis = new BufferedInputStream(p.getInputStream());
synchronized (p) {
p.waitFor();
}
System.out.println(p.exitValue());
int b=0;
while((b=bis.read()) >0){
System.out.print((char)b);
}
System.out.println("");
System.out.println("Called jar");
}
}
一度確認してください。https://stackoverflow.com/questions/20389255/reading-a-resource-file-from-within-jar#20389418 –