我试图运行一个可执行的jar在过去一小时,但我得到了标准错误Cannot access jarfile <jarpath>
。过了一段时间,我确定这是一个报价问题,因为路径中包含空格。打开JarFile问题
但是,我将路径存储在一个字符串变量中,当我尝试连接包含带双引号的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!
实际上,没有文件必须有jar的扩展才能运行。刚刚检查了命令行。 – collielimabean
我一定是在想别的东西。 – 2kan