Tomcat错误-Port already in use

本文介绍了解决Tomcat服务器中JMX远程管理端口9999被占用的问题,通过调整CATALINA_OPTS配置,成功避免了端口冲突,并确保了Tomcat服务的正常启动。
原创作品,允许转载,转载时请务必以超链接形式标明文章  原始出处 、作者信息和本声明。否则将追究法律责任。 http://perlin.blog.51cto.com/1202304/1143248

错误现象:

root@tomcat2:[/usr]vim /data/tomcat2/bin/shutdown.sh 
root@tomcat2:[/usr]/data/hstomcatinit.sh stop
Using CATALINA_BASE:   /data/tomcat2
Using CATALINA_HOME:   /data/tomcat2
Using CATALINA_TMPDIR: /data/tomcat2/temp
Using JRE_HOME:        /usr/java/jdk1.6.0_41
Using CLASSPATH:       /data/tomcat2/bin/bootstrap.jar:/data/tomcat2/bin/tomcat-juli.jar
错误: 代理抛出异常 : java.rmi.server.ExportException: Port already in use: 9999; nested exception is: 
java.net.BindException: Address already in use
root@tomcat2:[/usr]
 
解决方法:
不能使用JAVA_OPTS,二者区别 
#   JAVA_OPTS       (Optional) Java runtime options used when any command 
#                   is executed. 
#                   Include here and not in CATALINA_OPTS all options, that 
#                   should be used by Tomcat and also by the stop process, 
#                   the version command etc. 
#                   Most options should go into CATALINA_OPTS. 
#   CATALINA_OPTS   (Optional) Java runtime options used when the "start", 
#                   "run" or "debug" command is executed. 
#                   Include here and not in JAVA_OPTS all options, that should 
#                   only be used by Tomcat itself, not by the stop process, 
#                   the version command etc. 
#                   Examples are heap size, GC logging, JMX ports etc. 
 
修改后的配置:
 
  
  1. CATALINA_OPTS="-server -Xms1100M -Xmx1100M -Xss194k -XX:NewSize=300M -XX:MaxNewSize=400M -XX:MaxPermSize=128M -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:HeapDumpPath=$CATALINA_BASE/log/heap.hprof  -Dproject=gameserver -Djava.rmi.server.hostname=218.108.129.7 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.ssl=false -verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:$CATALINA_BASE/log/gc.log" 
 

本文出自 “每天一点点” 博客,请务必保留此出处http://perlin.blog.51cto.com/1202304/1143248

引用\[1\]和\[2\]中提到的错误"java.rmi.server.ExportException: Port already in use: 1099"是由于在启动RMI服务时,指定的端口号1099已经被其他进程占用导致的。这个错误表示无法将RMI服务绑定到指定的端口上,因为该端口已经被其他进程占用。 要解决这个问题,你可以尝试以下几种方法: 1. 检查是否有其他应用程序正在使用1099端口。你可以使用命令行工具(如netstat)或端口扫描工具来查看端口的占用情况。如果发现有其他进程正在使用1099端口,你可以选择停止该进程或更改RMI服务的端口号。 2. 如果你无法停止其他进程或更改端口号,你可以尝试在RMI服务启动时指定一个不同的端口号。你可以通过修改RMI服务的配置文件或代码来实现这一点。 3. 如果你的操作系统允许,你也可以尝试以管理员身份运行RMI服务,这可能会允许你使用已被占用的端口。 总结起来,当你遇到"java.rmi.server.ExportException: Port already in use: 1099"错误时,你需要检查并确保1099端口没有被其他进程占用,并且可以尝试更改RMI服务的端口号来解决这个问题。 #### 引用[.reference_title] - *1* [启动tomcat错误: 代理抛出异常 : java.rmi.server.ExportException: Port already in use: 1099的解决...](https://blog.youkuaiyun.com/qq_45991812/article/details/127909304)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [发生错误: 代理抛出异常错误: java.rmi.server.ExportException: Port already in use: 1099;的解决方法](https://blog.youkuaiyun.com/qq_46442797/article/details/129793334)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值