Salve ragazzi, non capsico cosa ci sia di errato nel codice. Compila il tutto ma quando lo eseguo mi da il classico errore di classe non trovata. Magari mi sfugge qualche particolare...
Il Programma è un server che semplicemente accetta connessioni da client (attraverso il while) e avvia per ciascuna un thread apposito che serve a ricevere una stringa.
Ringrazio in anticipo per ogni aiuto!

codice:
 Exception in thread "main" java.lang.NoClassDefFoundError: Server_P
Caused by: java.lang.ClassNotFoundException: Server_P
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: Server_P.  Program will exit.


codice:
//LATO SERVER
import java.net.*;
import java.io.*;



class ServerThread extends Thread{

	private Socket socket;
	
	public ServerThread(Socket socket){ //COSTRUTTORE
		this.socket = socket;
	}
	
	
    public void run() {
		try{
			BufferedReader is = new BufferedReader(new InputStreamReader(socket.getInputStream()));
			String userInput = "";
			userInput = is.readLine();
			System.out.println(userInput);
			socket.close();
			}catch(IOException e){System.out.println(e);}      
    }
}



public class Server_P{

	private int porta;
	
	public Server_P(String a){ //COSTRUTTORE
		porta = Integer.parseInt(a);
	}
	
	
	public void start() throws Exception {   //START
	    
		ServerSocket serverSocket = new ServerSocket(porta);
		while(true){
			System.out.println("In attesa di chiamate dai Client... ");
            Socket socket = serverSocket.accept();
			System.out.println("Ho ricevuto una chiamata di apertura da:\n" + socket);
            ServerThread serverThread = new ServerThread(socket);
            serverThread.start();
		}
	}	
	
	public static void main(String args[])throws Exception{ //MAIN
		Server_P pserver = new Server_P(args[0]);
		pserver.start();
		
	}
}