2012-10-14 2 views
1

계속이 오류가 발생합니다 : "새로운 ServerSocket에서의 예외 : java.net.BindException : 요청 된 주소를 할당 할 수 없습니다 : JVM_Bind". netstat을 사용하여 포트 (1500)에서 아무것도 실행되지 않도록 시도했습니다. 어떤 충고?java.net.BindException : JVM Bind

package server; 

import java.io.IOException 
import java.net.InetAddress 
import java.net.InetSocketAddress; 
import java.net.ServerSocket; 
import java.net.Socket; 
public class Server 
{ 
private ServerSocket serverSocket; 

Server(int Port) 
{ 
/* create socket server and wait for connection requests */ 
try 
{ 
     serverSocket = new ServerSocket(1500, 0, InetAddress.getByName("69.61.210.196")); 
     System.out.println("Server waiting for client on port " + serverSocket.getLocalPort()); 
     while(true) 
     { 
    Socket socket = serverSocket.accept(); // accept connection 
    System.out.println("New client asked for a connection"); 
     } 
    } 
    catch (IOException e) 
    { 
     System.out.println("Exception on new ServerSocket: " + e); 
    } 
} 

    public static void main(String[] args) 
    { 
     new Server(1500); 
    } 
} 
+0

OS 문제와 유사합니다. JVM을 실행중인 사용자가 포트 1500에 바인딩 할 수있는 충분한 OS 권한을 가지고 있습니까? – SJuan76

+0

69.61.210.196은 로컬 컴퓨터의 IP 주소입니까? 왜 0.0.0.0에 바인딩하지 않습니까? – EJP

답변

1

바인딩하려는 IP 주소가 네트워크의 외부 IP 주소이며 내 컴퓨터 IP가 아닌 것처럼 들립니다.

대신 127.0.0.1 또는 0.0.0.0에 바인딩하는 것이 좋습니다.

Windows에서 명령 줄에서 컴퓨터 사용을 얻으려면 ipconfig 및 Linux ifconfig.