本篇文章给大家分享的是有关如何使用JDK1.8解决Tomcat出现报错的问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
Tomcat(./shutdown.sh)出现报错,而恰好你用的是JDK1.8,下面的内容可能会帮助到你。本人小白一个,学习安装tomcat过程中,遇到如下报错[root@localhost tomcat]# bin/shutdown.sh Using CATALINA_BASE: /usr/local/tomcatUsing CATALINA_HOME: /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME: /usrUsing 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发现进程未启动(2)先停止tomcat,发现报错信息如下图(3)自己百度很长时间,尝试了各种教程,终于在一个大佬的教程里看到了可行的办法,他是在stackoverflow找到的答案大佬教程链接:https://blog.csdn.net/qq_31772441/article/details/80472968stackoverflow链接:https://stackoverflow.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的路径(前面部分才是)(4)进入 cd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b03-1.el7.x86_64/jre/lib/security/目录下(有可能你目录的名字跟我的不一样,我自己也是尝试找出来的)(5)vi java.security 进入vim编辑器的命令模式(6)进入后输入“/”,再输入关键词"securerandom.source=file:/dev/random",找到相应内容(7)按“a”进入输入模式,将 “securerandom.source=file:/dev/random ” 修改为 ”securerandom.source=file:/dev/./urandom “;最后按esc,输入“:wq!”,回车(8)先关闭,在开启,访问网页成功
以上就是如何使用JDK1.8解决Tomcat出现报错的问题,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注天达云行业资讯频道。