今天,我一同事,在启动tomcat时,报了Address already in use: JVM_Bind<null>:8080的错误,让我帮他看看。从字面意思可以看出哪个地址已经使用了,于是我通过命令行,netstat -ano.查看8080端口被谁用了。我同事8080的端口的PID 是376,然后通过任务启动栏,查看PID为376。
这里引用到了一个 新的问题,我查看到他对应的PID,376启动了Oracle的服务。
原来前几天他装了一个Oracle数据库,Oracle创建数据库时默认包含了XDB特性,一旦启动了数据库和监听器,Oracle的XDB的HTTP服务就占用8080端口。tomcat默认的服务也是8080,所以冲突了。
所以解决办法,改掉Oracle服务端口,或者改掉Tomcat的端口。就可以解决。