나는 UBUNTU/LINUX를 사용하고 있습니다.
나는이 응용 프로그램을 다른 플랫폼에서도 사용할 수 있어야하며 자바에서 일부 명령을 실행할 수 없습니다.
나는 여기
"자바 -version"을 실행하려고 내 코드 :Java에서 Null을 반환하는 Bash 스크립트를 실행 중
Runtime run = Runtime.getRuntime();
Process p = run.exec("java -version");
try (BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()))) {
for (String output = br.readLine(); output != null; output = br.readLine()) {
System.out.println(output);
}
} catch (IOException e) {
System.out.println(e);
}
그것은 빈 페이지가 아무 출력도 반환하지 않는다!
내가 등등 run.exec ("LS")/나 ("의 gedit") 등을 실행할 수 있습니다 ... 그리고 내가 DATA가
또한 내가 내부 프로그램을 실행할 수 있습니다 GET 그러나 나의 컴퓨터입니다.
.sh 파일이나 내장 java 명령을 실행할 수없는 이유는 무엇입니까? 당신의 PATH
변수 (출력 java
상위 디렉토리가
ProcessBuilder run = new ProcessBuilder("java", "-version");
run.redirectErrorStream(true);
Process p = run.start();
try (BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()))) {
for (String output = br.readLine(); output != null; output = br.readLine()) {
System.out.println(output);
}
} catch (IOException e) {
System.out.println(e);
}
확인하는 것이 :
2 가지 질문을 하나에 넣었고 2 가지 대답을했지만 아무 것도 받아 들여지지 않았습니다. -/ –