个人分类: 随笔
在测试nginx反向代理 时在同一个liunx上配置了三个tomcat7,startup.sh时正常启动。shutdown.sh时报错如下:
Jul 20, 2017 10:19:55 PM org.apache.catalina.startup.Catalina stopServer
SEVERE: Could not contact localhost:8005. Tomcat may not be running.
Jul 20, 2017 10:19:55 PM org.apache.catalina.startup.Catalina stopServer
SEVERE: Catalina.stop:
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
于是度娘了好多办法,从这些方法中得到了些启发,解决过程如下: 查看logs文件夹下的catalina.out 内容发现8005端口被占用
Jul 20, 2017 10:53:24 PM org.apache.catalina.core.StandardServer await
SEVERE: StandardServer.await: create[localhost:8005]:
java.net.BindException: Address already in use
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
at java.net.ServerSocket.bind(ServerSocket.java:376)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at org.apache.catalina.core.StandardServer.await(StandardServer.java:427)
at org.apache.catalina.startup.Catalina.await(Catalina.java:779)
at org.apache.catalina.startup.Catalina.start(Catalina.java:725)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:456)
网上的方法大部分都比较学术。。。。不就是端口被占用?那就改啊!!(原谅鄙人的由于无知带来的强大自信。嘿嘿) 于是就着手改了三个tomcat的conf下的server.xml里的”SHUTDOWN”端口(当然三个都不一样8017,8016,8015):
<Server port="8017" shutdown="SHUTDOWN">
哈哈。。然后有startup.sh 了一番(由于关不掉所以之前的直接kill了)然后执行shutdown.sh 你猜怎么着???竟然好了!!全部正常!解决! ps:/etc/profile里不用配置tomcat的信息,tomcat会自己识别。。