CシャープコードからJarファイルを実行し、jarから戻り値を取得したいだけです。出来ますか?
もしそうなら、サンプルコードを教えてください。
私は次のことを試しました、
string path = "C:\\Documents and Settings\\Desktop";
Process process = new Process();
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.UseShellExecute = false;
process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
process.StartInfo.CreateNoWindow = false;
process.StartInfo.FileName = "C:\\Program Files\\Java\\jre6\\bin\\java.exe";
process.StartInfo.Arguments = "-jar \"" + path + "\\simple.jar\"";
process.Start();
String s = process.StandardOutput.ReadToEnd();
ここで simple.jar には、引数を受け取り、渡された引数をコンソールに出力する main メソッドがあります。それ以外の場合は、コンソールに引数を出力しません。この行(String s = process.StandardOutput.ReadToEnd();)で上記のコードを試して、コンソールの値を読み取ることができました。
しかし、jarに値を渡してメソッドを実行したいのですが、メソッドはハッシュマップ(コレクション)値を返します(可能かどうかはわかりません)。これについての提案をお願いします。