2017-09-14 6 views
-2

Je viens d'essayer d'implémenter mon premier serveur, mais Java ne semble pas reconnaître mon serveur ServerSocket dans le bloc try-with-resources.Java: ServerSocket ErrorMessage

Quel est le problème avec le code suivant?

import java.io.DataInputStream; 
import java.io.DataOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.OutputStream; 
import java.net.Socket; 

public class ServerSocket { 
    public static void main(String[] args) { 

Message d'erreur Eclipse:

    constructeur
  • de ServerSocket (int) est définie
  • ServerSocket type n'est pas visible
  • la ressource ne met pas en œuvre AutoClosable
 try (ServerSocket serverSocket = new ServerSocket(7777)) { 
      Socket clientSocket = serverSocket.accept(); 

      InputStream in = clientSocket.getInputStream(); 
      OutputStream out = clientSocket.getOutputStream(); 

      DataInputStream dataIn = new DataInputStream(in); 
      DataOutputStream dataOut = new DataOutputStream(out); 

      String receivedMessage; 
      receivedMessage = dataIn.readUTF(); 
      System.out.println("Server received from Client: " + receivedMessage); 
      dataOut.writeUTF(receivedMessage); 

     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 
} 
+0

Quel genre d'erreur obtenez-vous? –

+0

résolu. un affrontement de nom stupide était le problème – John

Répondre

0

Vous devez renommer votre classe.

Il est en conflit avec la classe ServerSocket dans le JDK, qui est celle que vous voulez utiliser dans les ressources try-with-resources.

+0

jamais fait une telle erreur stupide avant. Merci d'avoir répondu – John

0

Vous avez un conflit de noms entre votre propre classe ServerSocket et celle que vous essayez d'utiliser. Appelez ça autrement, et ne faites pas cela.