报错信息
Address localhost:1099 is already in use
排查端口占用命令
## 根据端口查找PID
# 输入
netstat -ano | findstr 1099
# 输出
TCP 0.0.0.0:1099 0.0.0.0:0 LISTENING 8744
TCP [::]:1099 [::]:0 LISTENING 8744
UDP [::]:61099 *:*
## 根据PID查找对应任务
# 输入
tasklist|findstr 8744
# 输出
java.exe 8744 Console 1 753,176 K
## 结束任务
# 输入
taskkill -f -pid 8744
也可以打开任务管理器,查找PID为8744的任务;
问题分析
结束掉java.exe之后,tomcat就停止啦;
由于我通过IDEA配置了两个Tomcat,可以确定问题是由于两个tomcat设置了相同的端口造成的。
需要修改其中的一个Tomcat端口即可;
但是,在Tomcat的server.xml中没有这个端口号;还需要在其他地方进行设置。
问题解决
最终,在IDEA中设置Tomcat的界面中有关于该端口的设置。 【Run】→ 【Edit Configurations】,将JMX port设置为其他端口即可。
关于JMX
JMX 是 Java Management Extensions(Java管理扩展) 的缩写,它是 Java 平台上用于管理和监控应用程序、系统和网络资源的一种标准化的管理和监控框架。JMX 提供了一种标准的方式,通过这种方式,开发人员可以暴露应用程序中的各种管理和监控信息,然后可以使用 JMX 客户端工具或应用程序来访问和操作这些信息。