Linux中Tomcat启动失败

Linux中Tomcat启动失败,第1张

1.启动的时候出现  This file is needed to run this program  的错误信息     解决方案:         在Tomcat的bin目录下执行chmod +x *.sh         然后执行sh catalina.sh命令         执行sh startup.sh,tomcat就可以启动成功了 2.在Linux中运行Tomcat,显示Tomcat启动了,但是查询不到Tomcat的线程,如下图:    解决方案:      可以用 ./catalina.sh run  查看Tomcat的运行日志,根据日志解决问题,如下图: 显示为权限问题             把权限改了,启动一下Tomcat就好了~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~ 链接:https://blog.csdn.net/weixin_41671203/article/details/79757306 ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~

一.到tomcat的bin目录下启动startup.bat,(Linux中到tomcat的bin目录下,./startup.sh),如果能进入tomcat页面,则表示tomcat启动成功。

如果tomcat报错,拒绝访问,或者进不去的话要看具体原因。

目前为止遇到的问题如下:

一.1.

(1)Windows上,端口被占用。

一般出现的是运行后秒退的现象,打开cmd,输入netstat -ano|findstr 8080(端口号),只有一个8080的端口号,则不是端口被占用的问题

(2).查看Windows上的防火墙是否关闭

(3).如果遇到tomcat提示at least one jar was scanned for TLDs yet contained no TLDS,在tomcat包conf下面的Catalina.properties文件进行修改.

如图,将jarstoskip=\改为jarstoskip=*.jar

(4).查看项目端口是否被占用。eg:netstat -ano|findstr 3306(3306是项目的端口)

(5).打开tomcat后,能看见tomcat,但是无法进入项目:

#1.把项目包放在tomcat的webapp下

#2.进入项目包中的WEB_INF/classes/db.properties,查看里面的连接名称,端口号,密码,是否与数据库一致。

#3进入数据库,打开连接,如果连接失败,则进入任务管理器,查看mysql是否在运行,如果是关闭状态,则打开运行。

#4重新打开项目

(6)查看网页后面跟上的项目名,是否与数据库名一致。

在网上遇到好多坑。。然后我自己的坑并非和他们说的那么弱智的问题,,什么端口占用,,端口占用,我还用问你?

废话不多说:

通过搜索发现是随机数生成问题.解决方案如下

1.在服务器启动时也可以加上参数 -Djava.security.egd=[file:/dev/./urandom](file://dev/urandom)

2.在Tomcat下catalina.sh加入参数:JAVA_OPTS="-Xms1024m -Xmx1024m -XX:PermSize=128M -XX:MaxPermSize=256m -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8 -Djava.security.egd=file:/dev/./urandom"

即可解决!献给新玩Linux学生或者程序员们。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/yw/7553166.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-07
下一篇2023-04-07

发表评论

登录后才能评论

评论列表(0条)

    保存