服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Tomcat - 浅谈Tomcat乱码与端口占用的解决方案

浅谈Tomcat乱码与端口占用的解决方案

2021-09-08 16:33ThinkWon Tomcat

这篇文章主要介绍了浅谈Tomcat乱码与端口占用的解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

tomcat 服务器是一个免费的开放源代码的 web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 jsp 程序的首选。但是有些小伙伴在启动tomcat时也会遇到各种各样的问题,比如tomcat的startup.bat启动后出现乱码,端口占用,启动后闪退等问题,这里我们来一一进行解决

问题一:tomcat的startup.bat启动后出现乱码

浅谈Tomcat乱码与端口占用的解决方案

找到tomcat文件下的conf目录,修改logging.properties文件中java.util.logging.consolehandler.encoding对应的值为gbk

浅谈Tomcat乱码与端口占用的解决方案

重启tomcat,你看到的启动页面是这样的话,说明乱码问题已经解决

浅谈Tomcat乱码与端口占用的解决方案

问题二:一闪而退之端口占用

启动tomcat出现一闪而退的现象,其实还是可以看到tomcat终端输出的日志,这时你需要迅速截图捕获异常,太南了。

浅谈Tomcat乱码与端口占用的解决方案

最正确的方法是查看日志,找到tomcat目录下的logs目录中catalina当天的日志,我这里找到的是c:\develop\tomcat\apache-tomcat-8.5.47\logs\catalina.2019-10-17.log,在日志中可以看到类似这样的输出,address already in use: bind说明是端口占用了

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
17-oct-2019 11:14:30.521 严重 [main] org.apache.catalina.core.standardservice.initinternal failed to initialize connector [connector[http/1.1-8080]]
    org.apache.catalina.lifecycleexception: protocol handler initialization failed
        at org.apache.catalina.connector.connector.initinternal(connector.java:995)
        at org.apache.catalina.util.lifecyclebase.init(lifecyclebase.java:136)
        at org.apache.catalina.core.standardservice.initinternal(standardservice.java:552)
        at org.apache.catalina.util.lifecyclebase.init(lifecyclebase.java:136)
        at org.apache.catalina.core.standardserver.initinternal(standardserver.java:848)
        at org.apache.catalina.util.lifecyclebase.init(lifecyclebase.java:136)
        at org.apache.catalina.startup.catalina.load(catalina.java:639)
        at org.apache.catalina.startup.catalina.load(catalina.java:662)
        at sun.reflect.nativemethodaccessorimpl.invoke0(native method)
        at sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62)
        at sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43)
        at java.lang.reflect.method.invoke(method.java:498)
        at org.apache.catalina.startup.bootstrap.load(bootstrap.java:309)
        at org.apache.catalina.startup.bootstrap.main(bootstrap.java:492)
    caused by: java.net.bindexception: address already in use: bind
        at sun.nio.ch.net.bind0(native method)
        at sun.nio.ch.net.bind(net.java:433)
        at sun.nio.ch.net.bind(net.java:425)
        at sun.nio.ch.serversocketchannelimpl.bind(serversocketchannelimpl.java:223)
        at sun.nio.ch.serversocketadaptor.bind(serversocketadaptor.java:74)
        at org.apache.tomcat.util.net.nioendpoint.bind(nioendpoint.java:219)
        at org.apache.tomcat.util.net.abstractendpoint.init(abstractendpoint.java:1118)
        at org.apache.tomcat.util.net.abstractjsseendpoint.init(abstractjsseendpoint.java:224)
        at org.apache.coyote.abstractprotocol.init(abstractprotocol.java:581)
        at org.apache.coyote.http11.abstracthttp11protocol.init(abstracthttp11protocol.java:68)
        at org.apache.catalina.connector.connector.initinternal(connector.java:993)
        ... 13 more

在tomcat目录找到conf目录中的server.xml配置文件,在connector标签中修改tomcat启动端口

浅谈Tomcat乱码与端口占用的解决方案

?
1
2
3
<connector port="9080" protocol="http/1.1"
        connectiontimeout="20000"
        redirectport="8443" />

问题三:非端口问题的一闪而退

启动tomcat直接一闪而退,在logs目录的日志里面找不到错误信息,这个时候很大可能是因为tomcat与jdk版本不对应导致的,有可能你的tomcat是tomcat9版,而你的jdk是1.7版本的,tomcat与jdk版本对应关系可以参考这篇文章tomcat与jdk版本对应关系,tomcat各版本特性

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/ThinkWon/article/details/102622824

延伸 · 阅读

精彩推荐
  • Tomcat一次tomcat源码启动控制台中文乱码的调试过程记录

    一次tomcat源码启动控制台中文乱码的调试过程记录

    平时在使用tomcat做一些服务的时候经常遇到各种乱码问题,下面这篇文章主要给大家介绍了一次tomcat源码启动控制台中文乱码的调试过程,需要的朋友可以...

    zhoutaoping199211852021-09-24
  • TomcatTomcat安装配置方法图文教程

    Tomcat安装配置方法图文教程

    这篇文章主要为大家详细介绍了Tomcat安装配置方法图文教程,java环境变量如何配置,Eclipse安装配置方法图文教程 ,为大家分享了三个教程,感兴趣的小伙...

    Tomcat教程网13292021-08-11
  • Tomcat如何查看tomcat的控制台输出的方法

    如何查看tomcat的控制台输出的方法

    这篇文章主要介绍了如何查看tomcat的控制台输出的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    CaiCaiNeo11932021-08-29
  • TomcatTomcat CentOS安装实现过程图解

    Tomcat CentOS安装实现过程图解

    这篇文章主要介绍了Tomcat CentOS安装实现过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考...

    agrin5842021-09-15
  • TomcatTomcat服务器的安全设置

    Tomcat服务器的安全设置

    tomcat是一个开源Web服务器,基于Tomcat的Web运行效率高,可以在一般的硬件平台上流畅运行,因此,颇受Web站长的青睐。不过,在默认配置下其存在一定的安...

    IT专家网9002021-08-03
  • TomcatEclipse创建tomcat实现过程原理详解

    Eclipse创建tomcat实现过程原理详解

    这篇文章主要介绍了Eclipse创建tomcat实现过程原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以...

    海绵般汲取11642021-09-16
  • Tomcat解决Tomcat的maxPostSize属性的配置需要注意的问题

    解决Tomcat的maxPostSize属性的配置需要注意的问题

    这篇文章主要介绍了解决Tomcat的maxPostSize属性的配置需要注意的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋...

    life is wonderful12012021-09-13
  • TomcatTomcat整体结构简单介绍

    Tomcat整体结构简单介绍

    这篇文章主要介绍了Tomcat整体结构简单介绍,Tomcat的本质是一个Servlet容器。一个Servlet能做的事情是:处理请求资源,并为客户端填充response对象,需要的朋友...

    叫我田露也行12302021-09-07