如何使用JDK1.8解决Tomcat出现报错的问题

如何使用JDK1.8解决Tomcat出现报错的问题

本篇文章给大家分享的是有关如何使用JDK1.8解决Tomcat出现报错的问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

Tomcat(./shutdown.sh)出现报错,而恰好你用的是JDK1.8,下面的内容可能会帮助到你。
本人小白一个,学习安装tomcat过程中,遇到如下报错
[root@localhost tomcat]# bin/shutdown.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
十二月 12, 2019 5:22:27 下午 org.apache.catalina.startup.Catalina stopServer
严重: Could not contact [localhost:[8005]]. Tomcat may not be running.
十二月 12, 2019 5:22:27 下午 org.apache.catalina.startup.Catalina stopServer
严重: Catalina.stop:
java.net.ConnectException: 拒绝连接 (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at java.net.Socket.connect(Socket.java:538)
at java.net.Socket.<init>(Socket.java:434)
at java.net.Socket.<init>(Socket.java:211)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:504)
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.stopServer(Bootstrap.java:406)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:498)
一、安装Tomcat的环境及安装包:
(1)操作系统:CentOS Linux release 7.7.1908 (Core)
(2)JDK:jdk-8u221-linux-x64.tar.gz
(3)Tomcat:apache-tomcat-8.5.45.tar.gz
二、Tomcat报错:
(1)启动tomcat成功,使用ps -ef | grep tomcat发现进程未启动
如何使用JDK1.8解决Tomcat出现报错的问题
(2)先停止tomcat,发现报错信息如下图

(3)自己百度很长时间,尝试了各种教程,终于在一个大佬的教程里看到了可行的办法,他是在*找到的答案
大佬教程链接:
https://blog.csdn.net/qq_31772441/article/details/80472968
*链接:https://*.com/questions/36566401/severe-could-not-contact-localhost8005-tomcat-may-not-be-running-error-while
(4)解决方法:
找到 jdk1.8.xx 的安装路径,修改其子目录 /jre/lib/security/ 下的 “java.security” 文件中的 “securerandom.source=file:/dev/random” 为 "securerandom.source=file:/dev/./urandom "
三、具体解决过程:
(1)找到JDK的安装路径,使用命令which java(我自己知道JDK安装路径,不知道的可以使用命令)
(2)ls  -lrt /usr/local/java
(3)ls -lrt /etc/alternatives/java,最终得到的结果是jdk的路径(前面部分才是)
如何使用JDK1.8解决Tomcat出现报错的问题
(4)进入 cd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b03-1.el7.x86_64/jre/lib/security/目录下(有可能你目录的名字跟我的不一样,我自己也是尝试找出来的)
如何使用JDK1.8解决Tomcat出现报错的问题
(5)vi java.security 进入vim编辑器的命令模式
(6)进入后输入“/”,再输入关键词"securerandom.source=file:/dev/random",找到相应内容
如何使用JDK1.8解决Tomcat出现报错的问题
如何使用JDK1.8解决Tomcat出现报错的问题
(7)按“a”进入输入模式,将 “securerandom.source=file:/dev/random ” 修改为 ”securerandom.source=file:/dev/./urandom “;最后按esc,输入“:wq!”,回车
如何使用JDK1.8解决Tomcat出现报错的问题
(8)先关闭,在开启,访问网页成功
如何使用JDK1.8解决Tomcat出现报错的问题
如何使用JDK1.8解决Tomcat出现报错的问题

以上就是如何使用JDK1.8解决Tomcat出现报错的问题,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。