You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Windows等主机上发布部署Java Socket服务端?

Java Socket服务端部署落地方案

前置环境准备

  • 目标部署主机提前安装JRE/JDK 8及以上版本,配置好JAVA_HOME系统环境变量,终端执行java -version可正常返回版本信息即为环境合格
  • 提前排查服务监听的5000端口占用情况:Windows主机执行netstat -ano | findstr "5000",Linux/macOS主机执行netstat -tulpn | grep 5000,如果端口被其他进程占用,要么关停占用进程,要么修改代码里的监听端口
  • 若需要跨主机访问服务,提前在部署主机防火墙中放行5000端口的TCP入站规则
    现有提供的Server代码仅支持处理1次客户端连接,收到客户端发送的Stop指令后进程会直接退出,如果要做长期对外的服务,需要自行改造代码增加循环监听、多线程处理逻辑,以下流程基于你当前提供的可直接运行的代码展开。

代码编译操作

  1. 将Server.java、Client.java放到纯英文路径的文件夹下,不要使用含中文、特殊字符的路径,避免编译运行报错
  2. 打开终端进入上述文件夹,执行编译命令:
javac Server.java Client.java
  1. 编译完成后同目录会生成Server.class、Client.class字节码文件,后续部署只需要拷贝对应class文件即可,不需要携带原始java源码。

Windows主机部署方式

临时测试运行

在class文件所在目录打开终端,直接执行启动命令:

java Server

终端输出Server started、Waiting for a client ...即代表服务启动成功。

后台常驻运行

如果需要关闭终端后服务不退出,选择以下任意一种方式即可:

  • 方式1:用javaw命令静默启动,执行:
javaw Server

执行后无额外控制台窗口,服务在后台运行,需要关停时打开任务管理器,找到对应javaw.exe进程结束即可。

  • 方式2:配置开机自启。打开Windows「任务计划程序」,新建任务,设置触发条件为「主机开机时」,操作选择「启动程序」,程序路径选择本机java.exe的完整路径,添加参数为Server,起始位置填写class文件所在的完整目录,保存后即可实现开机自动启动服务,无需手动登录运行。

连通性验证

  • 本地验证:在部署主机另开一个终端,进入class文件目录执行java Client,终端输出Connected后输入任意文本,服务端可正常收到消息,输入Stop后两边连接正常断开即为功能正常。
  • 跨主机验证:将Client.class拷贝到测试客户端主机,修改Client源码中连接地址为服务端的实际IP,重新编译后运行客户端,可正常连接、收发消息即为跨主机部署生效。

Linux/macOS类主机部署方式

  • 提前安装对应版本JRE/JDK并配置好Java环境变量
  • 将编译好的Server.class上传到主机指定目录
  • 临时测试直接执行java Server即可启动
  • 需要后台常驻运行可使用nohup命令:
nohup java Server > socket-server.log 2>&1 &

执行后服务在后台运行,运行日志写入同目录socket-server.log文件。关停服务时先执行ps -ef | grep Server查到对应进程ID,再执行kill 进程ID即可。如果需要开机自启,把上述启动命令追加到/etc/rc.local文件中即可。


内容的提问来源于stack exchange,提问作者Sunny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 14:31:15