Window 和 Linux 下杀死Tomcat进程及解决其他端口被占用问题


1、应用场景

  在Windows或者Linux操作系统中,我们在启动一个tomcat服务器时,经常会发现8080端口已经被占用的错误,而我们又不知道如何停止这个tomcat服务器。

2、window环境下杀死进程

1、首先查找到占用8080端口的进程号PID是多少(tomcat默认是8080端口,假如你修改了tomcat的监听端口,请输入你的tomcat端口号

netstat -ano | findstr 8080

  这个命令输出的最后一列表示占用8080端口的进程号是多少,假设为9572

 

2、kill掉这个进程

taskkill /f /pid 9572

 

  这样8080端口就是释放了。

3、linux操作系统下关闭tomcat进程

1、看是否已经有tomcat在运行

ps -ef |grep tomcat 

  如果有tomcat有在运行将有类似下面的结果:

sun 5144 1 0 10:21 pts/1 00:00:06 /java/jdk/bin/java -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager

-Djava.endorsed.dirs=/java/tomcat/common/endorsed -classpath :/java/tomcat/bin/bootstrap.jar:/java/tomcat/bin/commons-logging-api.jar

-Dcatalina.base=/java/tomcat -Dcatalina.home=/java/tomcat -Djava.io.tmpdir=/java/tomcat/temp org.apache.catalina.startup.Bootstrap start

  从上面的输出信息,我们可以知道tomcat执行的进程号为5144

2、杀死进程

  执行下面的命令

pid = 5144 kill -9 5144 

  就可以彻底杀死tomcat。

4、遇到的异常情况

  当我再启动IDEA的tomcat时,报了下面的错误

  Connected to the target VM, address: '127.0.0.1:50363', transport: 'socket'
错误: 代理抛出异常错误: java.rmi.server.ExportException: Port already in use: 1099; nested exception is:
    java.net.BindException: Address already in use: JVM_Bind
Disconnected from the target VM, address: '127.0.0.1:50363', transport: 'socket'

  报错的主要原因是1099端口被占用了,我们需要杀死该进程。

  执行如下命令即可:

netstat -ano | findstr 1099

  得知它的进程号:我查出来是9992

  杀死9992号进程

taskkill /f /pid 9992

  即可正常启动了。

  致谢:感谢您的阅读!

更多Tomcat相关教程见以下内容

CentOS 6.6下安装配置Tomcat环境 

RedHat Linux 5.5安装JDK+Tomcat并部署Java项目   

Tomcat权威指南(第二版)(中英高清PDF版+带书签)   

Tomcat 安全配置与性能优化  

Linux下使用Xshell查看Tomcat实时日志中文乱码解决方案  

CentOS 64-bit下安装JDK和Tomcat并设置Tomcat开机启动操作步骤  

CentOS 6.5下安装Tomcat   

Tomcat 的详细介绍:请点这里
Tomcat 的下载地址:请点这里

本文永久更新链接地址

相关内容

    暂无相关文章