问题:- 如果可执行命令包含任何空格,则System.exec将省略第一个空格后的字符串内容。
例如:- if command=" /opt/GUIInstaller/installers/abc def gh.bin " 那么 java 只执行命令到/opt/GUIInstaller/installers/abc并导致类似 java.io.IOException 的错误:" /opt/GUIInstaller/installers/abc": error=2, 没有这样的文件或目录
protected void launch(final String command)
{
try
{
if(command.contains("null"))
{
logger.error("Installer is not located in the specified folder: "+command);
System.exit(0);
}
runTime.exec(command);
}
catch (IOException ioException) {
logger.error(ioException.getMessage(), ioException);
}
}
我做错了什么,请帮我解决这个问题。
环境:- Java7 update9 + RHEL6