java吧 关注:1,231,461贴子:12,694,026

各位我在iidea有一个客户端和服务端两个java模块,

只看楼主收藏回复

这两个模块在idea里都能单独运行,并能通讯,我使用idea2.022.1.3打包方法打成jar包,按jar包的运行方法,就不运行。我才接触这个。搞不清还有啥问题,各位请指教。


IP属地:江苏1楼2023-11-20 11:14回复
    把代码发出来


    IP属地:江苏来自iPhone客户端2楼2023-11-20 11:21
    回复


      IP属地:江苏3楼2023-11-20 11:31
      回复
        import java.awt.*;
        import java.awt.event.*;
        import java.io.*;
        import java.net.*;
        public class Client extends Frame implements ActionListener{
        Label label=new Label("交谈");
        Panel panel=new Panel();
        TextField tf=new TextField(28);
        TextArea ta=new TextArea();
        Socket client;
        InputStream in;
        OutputStream out;
        public Client() {
        super("客户端");
        setSize(380,380);
        panel.add(label);
        panel.add(tf);
        tf.addActionListener(this);
        add("North",panel);
        add("Center",ta);
        addWindowFocusListener(new WindowAdapter() {
        public void windowClosing(WindowEvent e) {
        // TODO Auto-generated method stub
        System.exit(0);
        }
        });
        setVisible(true);
        try {
        client=new Socket(InetAddress.getLocalHost(), 8081); //因为是在自己的机器上使用所以用InetAddress的静态方法getLocalHost方法得到主机
        ta.append("已连接到服务器:"+client.getInetAddress().getHostName()+"\n\n");
        in=client.getInputStream();
        out=client.getOutputStream();
        } catch (Exception e) {
        // TODO: handle exception
        e.printStackTrace();
        }
        while(true) {
        try {
        byte[] buf=new byte[256];
        in.read(buf);
        String str=new String(buf);
        ta.append("服务器说:"+str);
        ta.append("\n");
        } catch (Exception e) {
        // TODO: handle exception
        e.printStackTrace();
        }
        }
        }
        @Override
        public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
        try {
        String str=tf.getText();
        byte[] buf=str.getBytes();
        out.write(buf);
        tf.setText("");
        ta.append("我说:"+str);
        ta.append("\n");
        } catch (Exception e2) {
        // TODO: handle exception
        e2.printStackTrace();
        }
        }
        public static void main(String[] args) {
        // TODO Auto-generated method stub
        new Client();
        }
        }


        IP属地:江苏4楼2023-11-20 11:32
        回复
          import java.awt.*;
          import java.awt.event.*;
          import java.io.*;
          import java.net.*;
          public class Server extends Frame implements ActionListener{
          Label label=new Label("交谈");
          Panel panel=new Panel();
          TextField tf=new TextField(27);
          TextArea ta=new TextArea();
          ServerSocket server;
          Socket client;
          InputStream in;
          OutputStream out;
          public Server() {
          super("服务器");
          setSize(380,380);
          panel.add(label);
          panel.add(tf);
          tf.addActionListener(this);
          add("North",panel);
          add("Center",ta);
          addWindowFocusListener(new WindowAdapter() {
          public void windowClosing(WindowEvent e) {
          System.exit(0);
          }
          });
          setVisible(true);
          try {
          server=new ServerSocket(8081); //指定端口号
          client=server.accept(); //使用ServerSocket的accept方法得到Socket
          ta.append("已连接的客户机:"+client.getInetAddress().getHostName()+"\n\n");
          in=client.getInputStream();
          out=client.getOutputStream();
          } catch (Exception e) {
          e.printStackTrace();
          }
          while(true) {
          try {
          byte[] buf=new byte[256];
          in.read(buf);
          String str=new String(buf);
          ta.append("客户机说:"+str);
          ta.append("\n");
          } catch (Exception e) {
          // TODO: handle exception
          e.printStackTrace();
          }
          }
          }
          public void actionPerformed(ActionEvent e) {
          try {
          String str=tf.getText();
          byte[] buf=str.getBytes();
          out.write(buf);
          tf.setText("");
          ta.append("我说:"+str);
          ta.append("\n");
          } catch (Exception e2) {
          // TODO: handle exception
          e2.printStackTrace();
          }
          }
          public static void main(String[] arg0) {
          new Server();
          }
          }


          IP属地:江苏5楼2023-11-20 11:33
          回复
            这两个模块单独都能运行,可通讯


            IP属地:江苏6楼2023-11-20 11:35
            回复
              生成的Javafuwu.jar包不运行。


              IP属地:江苏7楼2023-11-20 13:06
              回复
                不运行是指启动不起来还是什么,发一下启动日志


                IP属地:陕西8楼2023-11-20 14:15
                回复


                  IP属地:江苏9楼2023-11-20 14:43
                  回复
                    报什么错啦?指令没看出啥问题


                    IP属地:安徽来自Android客户端10楼2023-11-20 14:44
                    回复
                      等等,用了awt的包吗?你jdk版本是不是11哇,改成8再试试?


                      IP属地:安徽来自Android客户端11楼2023-11-20 14:45
                      回复
                        我才用的这个启动方式,点击闪亮一下,没有提示就完事了。


                        IP属地:江苏12楼2023-11-20 14:45
                        回复
                          用nohup java -jar


                          IP属地:上海来自iPhone客户端13楼2023-11-20 14:51
                          回复


                            IP属地:江苏14楼2023-11-20 14:51
                            回复


                              IP属地:江苏15楼2023-11-20 14:54
                              回复