我们有一个在Tomcat 7上运行的Web应用程序,我们正在转移到Tomcat 8,现在依赖于应用程序的内部微服务。我们使用Netbeans。
我对配置进行了必要的更改,以便我可以从命令行启动微服务应用程序,然后启动计算机上的Web应用程序。但是,当我尝试从Netbeans中运行Web应用程序时,它告诉我" Tomcat的启动失败,服务器端口8443已经在使用"。
我不知道为什么在Netbeans中运行时报告该端口正在使用,但是如果从命令行运行具有相同Web应用程序的相同服务器则不会。有没有人对要检查的内容有任何想法?
答案 0 :(得分:0)
快速取得进步的方法只是使用 8443 以外的端口。这不一定能解决你遇到的问题,但它会绕过它。要做到这一点:
netstat -aon | findstr 8447
09-Jan-2018 02:07:26.279 INFO [main] org.apache.coyote.AbstractProtocol.start启动ProtocolHandler [" http-nio-8080"] 09-Jan-2018 02:07:26.285 INFO [main] org.apache.coyote.AbstractProtocol.start启动ProtocolHandler [" https-openssl-apr-8447 "] 09-Jan-2018 02:07:26.290 INFO [main] org.apache.coyote.AbstractProtocol.start启动ProtocolHandler [" ajp-nio-8009"] 09-Jan-2018 02:07:26.293 INFO [main] org.apache.catalina.startup.Catalina.start服务器启动时间为2585毫秒
作为一个单独的问题,一旦所有内容都在端口 8447 上运行,请运行 netstat -aon | findstr 8443 查看Tomcat运行时是否仍在使用端口 8443 。如果是,则(在Windows上)获取仍在使用该端口的进程的PID,然后在任务管理器的详细信息选项卡上查找该PID。这里的屏幕截图显示,在我的情况下,端口 8447 被PID 2340 使用,这是Tomcat的 java.exe 的实例:
如果没有解决任何问题: