我在使用 eclipse 时遇到 Ubuntu 错误并被强制关闭程序后就出现了这个错误。
本地主机上的 Tomcat v7.0 服务器所需的几个端口(8005、8080、8009)已被使用。该服务器可能已在另一个进程中运行,或者系统进程可能正在使用该端口。要启动此服务器,您需要停止其他进程或更改端口号。
即使手动停止服务器后,我仍然收到该错误
$> sudo /etc/init.d/tomcat7 stop
* Stopping Tomcat servlet engine tomcat7 [ OK ]
$> sudo /etc/init.d/tomcat7 status
* Tomcat servlet engine is not running.
无需重新启动计算机我能做什么?
系统详细信息
- Ubuntu 13.10
- Eclipse Kepler 服务版本 1
- Tomcat 版本 7.0.50
答案1
您可以使用此命令来识别在后台运行的任何 Tomcat 进程:
ps -ef | grep "org.apache.catalina.startup.Bootstrap" | grep -v grep
对于每个正在运行的实例,您应该获得如下一行:
username 26546 5581 71 12:51 ? 00:00:07 /usr/lib/jvm/java-6-openjdk-amd64/bin/java -Dcatalina.base=/home/ringo/eclipseWorkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0 -Dcatalina.home=/home/ringo/java/apache-tomcat-7.0.37 -Dwtp.deploy=/home/ringo/eclipseWorkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps -Djava.endorsed.dirs=/home/ringo/java/apache-tomcat-7.0.37/endorsed -Dfile.encoding=UTF-8 -classpath /home/ringo/java/apache-tomcat-7.0.37/bin/bootstrap.jar:/home/ringo/java/apache-tomcat-7.0.37/bin/tomcat-juli.jar:/usr/lib/jvm/java-6-openjdk-amd64/lib/tools.jar org.apache.catalina.startup.Bootstrap start
该行的第二个值是进程 ID。然后您可以使用 kill 命令终止它,例如:
kill -9 26546
要使用单个命令查找进程并将其终止:
ps -ef | grep "org.apache.catalina.startup.Bootstrap" | grep -v grep | awk '{ print $2 }' | xargs kill -9
答案2
我遇到了同样的问题,并关注了这个答案解决问题。简而言之,通过转到/usr/share/tomcat7/bin
并执行来关闭 tomcat 服务./shutdown.sh
,这会给出一些警告消息(不是 java 异常)。
答案3
我认为你的 eclipse 中有两个服务器
如果你想解决这个问题,那么 1. 转到 eclipse ide 的底部,单击服务器,然后双击 tomcat v8.0,单击 Overvie 窗口后,将出现此窗口,检查端口并更改端口号
2.如果你不想更改端口号,那么你必须在 eclipse ide 中只添加一个服务器,所以你必须从 ide 中删除该服务器,接受一个要删除的服务器,转到窗口->首选项->服务器->运行时环境服务器将出现在右侧添加和删除等按钮将可用,选择你必须删除的服务器,然后单击删除按钮,然后确定
完成 谢谢.........