最近用java socket的tcp协议API做了个简单的即时通讯小程序,在IDE里运行是正常的,
但把server端的程序打成jar包(或exe程序)后,再启动client端就出现如下异常:
java.net.SocketException: Connection refused: connect我感觉应该是将server端源码打成jar包运行时,该server端程序没能监听程序中设置的端口号造成的,
但网上查了很久,不得其解,求牛人指点,十分感谢!

解决方案 »

  1.   

    什么服务器? linux上用netstat -nao|grep “你server端启动的端口"   看看服务端启动监听了没有
      

  2.   

    服务器没启动,或者客户端里写的IP地址不对如果确认服务器启动,监听成功了。办法见2楼。可以用wireshark之类的抓包工具,看看客户端的代码对不对。
      

  3.   

    你好,我现在项目也是打成war包后,socket没有开启监听,老是报端口被占用的错误。请问你是怎么解决这个问题的?可以帮帮我吗?
      

  4.   

    打包后的server端的程序的端口被封了?检查防火墙是不是封了端口
      

  5.   

    请问这个问题解决了吗,我也遇到类似的问题,在IDE中客户端可以与服务端连接成功,但是将服务端打成jar包,客户端进行连接socket请求,却始终连接不上,也没有任何错误信息,请问有人知道吗