オープンソースのcプログラムをJavaプログラムと統合しています。
JNIを使おうとしましたが、やりたいことからは適切ではありませんでした。
cプログラムの使い方は以下の通りです。
program_name argument1 [-a maxSize] [-o maxSizeO] ...... [-P] \
in.txt in1.dat in2.dat in1.tmp in2.tmp out.txt
このようにProcessBuilderクラスを使用してこのプログラムを実行できます。
ProcessBuilder pb = new ProcessBuilder("program_name",
"argument1",
"-a", maxSize,
"-o", maxSizeO.........,
int2.tmp, out.txt);
Process p = pb.start();
しかし、オプションの引数がたくさんあるので、Javaプログラムを維持するための間違った方法のように見えます。
ソフトウェア設計の良い方法でこの問題を解決するためのアイデアはありますか?
前もって感謝します。