代码呢?主要问题是找不到Main()函数。

解决方案 »

  1.   

    将你javac 命令行设置的 classpath 的值,和java命令行classpath的值设置成一样,试试。
      

  2.   

    代码没有问题呀,我是win2000sever的;
    用的是textpad;设classpath时出错(上面错误信息);
    不设就能运行  怪了
      

  3.   

    安装jdk是:
    j2sdk-1_4_1_01-windows-i586.exe
      

  4.   

    因为接用自已的类
    才去设环境变量classpath,里头去没有设此内容
    我给它加上.;
    CLASSPATH=C:\j2sdk1.4.1_01\lib\dt.jar;C:\j2sdk1.4.1_01\lib\tools.jar;C:\j2sdk1.4.1_01\lib\NCSO.jar;C:\j2sdk1.4.1_01\jre\lib\charsets.jar;C:\j2sdk1.4.1_01\jre\lib\jaws.jar;C:\j2sdk1.4.1_01\jre\lib\jce.jar;C:\j2sdk1.4.1_01\jre\lib\jsse.jar;C:\j2sdk1.4.1_01\jre\lib\rt.jar;C:\j2sdk1.4.1_01\jre\libsunrsasign.jar
    就错了?????????
      

  5.   

    你试试
    javac -classpath %classpath%;./ class类名
      

  6.   

    to sgr_kk(丝瓜) 
      直接通过
      

  7.   

    import java.io.*;
    import java.net.*;
    import java.awt.*;
    import java.awt.event.*;
    public class MySocketServer
    {
    public static void main(String args[])
    {
    ServerService MyServer=new ServerService(8008,10);
    }
    }
    class ServiceThread extends Frame implements Runnable
    {
    ServerService FatherListener;
    Socket ConnectedClient;
    Thread ConnectThread;
    Panel ListenerPanel;
    TextArea ServerMeg;
    public ServiceThread(ServerService sv,Socket s)
    {
    FatherListener = sv;
    ConnectedClient= s;
    ConnectThread = new Thread(this);
    setTitle("Answer Client");
    setLayout(new BorderLayout());
    ServerMeg = new TextArea(10,50);
    add("Center",ServerMeg);
    setResizable(false);
    pack();
    show();
    InetAddress  ClientAddress = ConnectedClient.getInetAddress();
    ServerMeg.appendText("Client connected"+" from\n"+ClientAddress.toString()+".\n");
    }
    public void run()
    {
    try{
    DataInputStream in=new DataInputStream(
    new BufferedInputStream(ConnectedClient.getInputStream()));
    PrintStream out=new PrintStream(
    new BufferedOutputStream(ConnectedClient.getOutputStream()));
    out.println("Hello!Welcome connect to our server!\n");
    out.flush();
    String s=in.readLine();
    while(!s.equals("Bye"))
    {
    ServerMeg.appendText("Client 端输入的信息为:\n"+s);
    s=in.readLine();
    }
    ConnectedClient.close();
    }
    catch(Exception e){}
    FatherListener.addMeg("Client "+"Close."+"\n");
    dispose();
    }
    }
    class ServerService extends Frame
    {
    ServerSocket m_sListener;
    TextArea ListenerMeg;
    public ServerService(int Port,int Count)
    {
    try{
    m_sListener=new ServerSocket(Port,Count);
    setTitle("Server Listener");
    this.addWindowListener(new WinAdpt());
    setLayout(new BorderLayout());
    ListenerMeg = new TextArea("监听服务已经启动\n",10,50);
    add("Center",ListenerMeg);
    setResizable(false);
    pack();
    show();
    while(true)
    {
    Socket Connected=m_sListener.accept();
    InetAddress ClientAddress = Connected.getInetAddress();
    ListenerMeg.appendText("Client "+"connected"+" from\n"+ClientAddress.toString()+".\n");
    ServiceThread MyST=new ServiceThread(this,Connected);
    MyST.ConnectThread.start();
    }
    }
    catch(IOException e){}
    }
    public void addMeg(String s)
    {
    ListenerMeg.appendText(s);
    }
    }
    class WinAdpt extends WindowAdapter
    {
    public void windowClosing(WindowEvent e)
    {
    ((Frame)e.getWindow()).dispose();
    System.exit(0);
    }
    }
      

  8.   

    说明你的程序运行了
    在main函数内
    System.out.println("program running");
    运行程序就会看到输出
      

  9.   

    你的程序执行到
    InetAddress ClientAddress = Connected.getInetAddress();
    在等待客户端的响应Connected
    如果每遇响应,程序就一直等待
      

  10.   

    重新编译一遍试一试,可能你上次编译时,并没有main,而加上main和其他东西时编译可能有错你没注意
      

  11.   

    谢谢sgr_kk(丝瓜)问题自已 已解决