我尝试在 java 代码中执行一个基本命令,即“java -version”。我的代码适用于 shell 命令,例如“ls”、“echo $PATH”等。我的代码:
import java.io.*;
public class cmd {
public static void main(String[] args) {
String command = "java -version";
Process proc = null;
try {
proc = Runtime.getRuntime().exec(command);
} catch (IOException e1) {
System.out.println( "IOException 1" );
}
BufferedInputStream buffer = new BufferedInputStream( proc.getInputStream() );
BufferedReader commandOutput= new BufferedReader( new InputStreamReader( buffer ) );
String line = null;
try {
while ( ( line = commandOutput.readLine() ) != null ) {
System.out.println( line );
}
commandOutput.close();
} catch ( IOException e) {
System.out.println( "IOException 2" );
}
}
}
代码正常工作,没有异常或错误,但没有输出。
如果 String command = "ls",则代码可以运行,并且可以在控制台中看到输出。