이 코드는 한 번만 실행됩니다. 그것은 ipv4 주소를 기반으로 원격 컴퓨터에 액세스하기위한 것입니다.두 번 이상 실행하려면 어떻게해야합니까?
언제든지 사용할 수 있도록하고 여러 번 실행하려고합니다. 어떤 코드를 추가해야합니까?
public void run() {
try {
ServerSocket ss = new ServerSocket(6609);
Socket s = ss.accept();
System.out.println("connected");
String string = "";
DataInputStream in = new DataInputStream(s.getInputStream());
DataOutputStream out = new DataOutputStream(s.getOutputStream());
string = in.readUTF();
//System.out.println(string);
ProcessBuilder pp = new ProcessBuilder("cmd.exe" , "/c" , "cd " + string);
Process p = pp.start();
DataInputStream get = new DataInputStream(p.getInputStream());
String str = "";
while((str = get.readLine()) != null) {
out.writeUTF(str);
System.out.println(str);
}
System.out.println("Finish server");
} catch(Exception event) {
JOptionPane.showMessageDialog(null, event);
}
//run();
}
두 번째는 어떻게됩니까? BTW, 당신은 빈 잡기 (예외) 블록이 있습니다. * 절대로 그렇게하지 마십시오. 예외를 인쇄하십시오. 아마 뭔가를 말해 줄 수 있습니다. –
thx. 나는 그것을 잊었다. 몇 가지 코드로 테스트했습니다. 코드에는 아무런 변화가 없습니다. 한 번만 perfetly 실행됩니다. 하지만 일단 루프를 사용합니다. 그것은 망 쳤다. 재귀를 사용하면 나 빠지게됩니다. –
'파산'은 문제에 대한 설명이 아닙니다. 프로그램이 실패하지도 않습니다. – EJP