2013-03-30 3 views
1

새 창에서 새 프로세스를 만들려고합니다. 이 예제의 다음 명령은 Running a command in a new Mac OS X Terminal window (Java 프로세스 빌더 사용)입니다. 내가 결과 명령을 인쇄하고 그것을 수동으로 입력하면 작동하지만, 그것을 실행할 때 새 창을 시작하지 않습니다. 는 자바 과정을 시작한다면 예상대로새 터미널에서 Java 시작 명령 (mac osx) - 프로세스 빌더가 osascript를 제대로 실행하지 않음

try { 
     ProcessBuilder pb = new ProcessBuilder("osascript", "-e", 
      "'tell application \"Terminal\" to do script \"java -jar test.jar\"'"); 
     Process p = pb.start(); 
    } catch (Exception ex) { 
     ex.printStackTrace(); 
    } 

그것도 (오류를 가져 오지 않습니다 osascript -e 'tell application "Terminal" to do script "java -jar test.jar"'만큼 간단

뭔가

샘플 코드까지 아무것도 가져 오지 않는다 새 터미널 창)

답변

2

평소처럼 내 문제를 조사하는 데 시간이 많이 걸리지 만 스택 오버플로를 묻은 후에 어리석은 해결책을 찾았습니다 ... tell application... 주위에 작은 따옴표가 필요하지 않습니다. 프로세스 빌더가 그렇게합니다. 질문을 닫아야하는지 확실하지 않습니다. 확실히 현지화되었지만 확실히 혼란스러운 IMO