Linux系统下,Tomcat启动有时报Address already in use:8080

jiudiwai 2010-10-24 06:26:20
我知道 是端口被占用,可是第一次启动就是成功的,再关闭后,重启就报错,具体错误码信息如下:

2010-10-24 18:12:23 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/local/jdk1.5.0_06/jre/lib/i386/server:/usr/local/jdk1.5.0_06/jre/lib/i386:/usr/local/jdk1.5.0_06/jre/../lib/i386:/opt/sybase/OCS-12_5/lib:/opt/sybase/OCS-12_5/lib3p:/opt/sybase/SQLRemote/lib:/opt/sybase/ASE-12_5/lib:/opt/sybase/OCS-12_5/lib:/opt/sybase/OCS-12_5/lib3p:/opt/sybase/SQLRemote/lib:/opt/sybase/ASE-12_5/lib:
2010-10-24 18:12:23 org.apache.coyote.http11.Http11Protocol init
严重: Error initializing endpoint
java.net.BindException: Address already in use<null>:8080
at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:502)
at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:176)
at org.apache.catalina.connector.Connector.initialize(Connector.java:1058)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:677)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:795)
at org.apache.catalina.startup.Catalina.load(Catalina.java:530)
at org.apache.catalina.startup.Catalina.load(Catalina.java:550)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412)
2010-10-24 18:12:23 org.apache.catalina.startup.Catalina load
严重: Catalina.start
LifecycleException: Protocol handler initialization failed: java.net.BindException: Address already in use<null>:8080
at org.apache.catalina.connector.Connector.initialize(Connector.java:1060)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:677)
at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:795)
at org.apache.catalina.startup.Catalina.load(Catalina.java:530)
at org.apache.catalina.startup.Catalina.load(Catalina.java:550)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412)
2010-10-24 18:12:23 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 574 ms


这个项目里面使用的数据库是Sybase,另:在配制 Tomcat 时,那个文件夹名字有个空格怎么设置可以有效?
...全文
4446 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
HanEric 2012-07-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
那是因为你的tomcat已经启动了 tomcat自带的关闭脚本 有时候关闭看上去成功了 其实并没有关闭了
你可以ps -ef | grep java查看 如果还在 就用kill -9 pid把它杀掉 再启动tomcat

另外在linux下 尽量避免用带空格的文件名 文件夹 容易搞错 在使用空格的时候加转义字符\ 即\空格
[/Quote]谢谢1楼的解答,原来那个PID要替换成进程号才行,另外,使用命令ps -ef|grep java可以同时看到五六个进程,需要逐个把它们关闭,然后再重新启动tomcat就不会报上面那个错误了,我昨天也遇到了,今天壹早到公司就火速投入到这个问题的解决当中,这个方法真不错,受教了。
jiudiwai 2010-10-24
  • 打赏
  • 举报
回复
呵呵 ,我再查查,谢了啊……
steptodream 2010-10-24
  • 打赏
  • 举报
回复
界面就是timeout 没有别的提示错误?
有点奇怪哦
jiudiwai 2010-10-24
  • 打赏
  • 举报
回复
嗯,日志里面也没有报错……只是打印了一些后台的sql信息
steptodream 2010-10-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jiudiwai 的回复:]

还是不行啊,那个新窗体就一直在那里等待响应,却没有反应,一直到响应超时……
[/Quote]
看日志啊。
jiudiwai 2010-10-24
  • 打赏
  • 举报
回复
还是不行啊,那个新窗体就一直在那里等待响应,却没有反应,一直到响应超时……
steptodream 2010-10-24
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 jiudiwai 的回复:]

呃,现在有一个新问题了,我的项目启动了,可是只能打开首页,后面只要再打开新窗口就一直响应,却打不开?这是为什么啊?
[/Quote]
tomcat启动之后稍微等一下 再访问项目
另外看看相关的日志信息
jiudiwai 2010-10-24
  • 打赏
  • 举报
回复
呃,现在有一个新问题了,我的项目启动了,可是只能打开首页,后面只要再打开新窗口就一直响应,却打不开?这是为什么啊?
jiudiwai 2010-10-24
  • 打赏
  • 举报
回复
谢了,这个问题解决了……
是Tomcat的进程并没有真正关闭,
使用kill -9 pid关闭了进程就好了……
freetstar 2010-10-24
  • 打赏
  • 举报
回复
应该是启动之后没有正确关闭
jiudiwai 2010-10-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 steptodream 的回复:]
那是因为你的tomcat已经启动了 tomcat自带的关闭脚本 有时候关闭看上去成功了 其实并没有关闭了
你可以ps -ef | grep java查看 如果还在 就用kill -9 pid把它杀掉 再启动tomcat

另外在linux下 尽量避免用带空格的文件名 文件夹 容易搞错 在使用空格的时候加转义字符\ 即\空格
[/Quote]
谢谢了啊,我试试……
steptodream 2010-10-24
  • 打赏
  • 举报
回复
那是因为你的tomcat已经启动了 tomcat自带的关闭脚本 有时候关闭看上去成功了 其实并没有关闭了
你可以ps -ef | grep java查看 如果还在 就用kill -9 pid把它杀掉 再启动tomcat

另外在linux下 尽量避免用带空格的文件名 文件夹 容易搞错 在使用空格的时候加转义字符\ 即\空格

18,773

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧