過去 1 時間、実行可能な jar を実行しようとしましたが、標準エラーが発生しましCannot access jarfile <jarpath>
た。しばらくして、パスにスペースが含まれているため、引用符の問題であると判断しました。
ただし、パスを文字列変数に格納し、jar へのパスを含む文字列を二重引用符で連結しようとすると、まだ失敗します。これをどのように解決すればよいですか?
説明する:
string path = /* %appdata% folder */ + ""\\Application Name\\" + "Application.jar";
//add the double quotes
path = path + "\"";
path += "\"";
Process javaProcess = new Process()
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = "javaw";
startInfo.Arguments = @"-jar " + path;
//startInfo.Arguments = @"-jar" + "\"C:...\\Application\\Application.jar\"";
//this one works, though
javaProcess.StartInfo = startInfo;
javaProcess.Start(); //Fails - cannot access jarfile!