많은 소프트웨어에서 변경 한 후에는 소프트웨어를 다시 시작해야 변경 사항이 적용되고 때로는 자동으로 소프트웨어를 다시 시작하는 옵션이 있습니다 . 어떻게 이것을 Java로 구현할 수 있습니까?
이 내가 시도 것입니다 :
Java에서 '응용 프로그램 다시 시작'기능을 구현하는 방법
int o = JOptionPane.showConfirmDialog(
frame,
"<html>The previously selected preferences have been changed.<br>Watch must restart for the changes to take effect.<br> Restart now?</html>",
"Restart now?", JOptionPane.YES_NO_OPTION);
if(o == JOptionPane.YES_OPTION) {
try {
Process p = new ProcessBuilder("java", "Watch").start();
} catch(IOException e) {
e.printStackTrace();
}
frame.dispose();
그러나,이 작동하지 않습니다. 응용 프로그램이 종료됩니다. 내가 여기서 무엇을 놓치고 있니? 미리 감사드립니다!
대신 그냥 "시계"의 절대 경로를보십시오. – Sebastian
CLASSPATH를 추가 하시겠습니까? –
커맨드 라인에서 프로그램 시작을 시도하십시오 -> 정확히 이것을 'ProcessBuilder'에 넣으십시오. "PATH"와 같은 환경 변수가 ProcessBuilder로로드되지 않아서 "java"가 인식되지 않는 문제가있었습니다. 그러나 이것을 할 수있는 방법이 있습니다. 나는 기억이 안 난다 ... – Sebastian