【bug】idea中启动tomcat异常,访问网站返回404
问题描述
今天重装系统,一些配置都丢了,心想重装一下又不是很麻烦,但结果却真的很麻烦。
安装完java、tomcat、idea后,在idea中启动tomcat发现控制台和之前的不一样,之前是有当前项目的url地址输出的,现在没有了:
并且打开浏览器访问localhost:8080也是错误404:
一开始以为猫腻在控制台输出的第1~3行,输出警告某个文件夹不存在;
后来又注意到输出中的CATALINA_BASE和CATALINA_HOME的值不是我配置的tomcat的安装目录;
但上面这两个都不是问题原因。
解决及原因
问题的根本原因是java版本和tomcat版本不匹配所致。
我试了一下用java7和8运行tomcat7、8、9,最终结果如下:
java版本 | tomcat版本 | 运行结果 |
---|---|---|
7 | 7 | 成功 |
7 | 8 | 失败 |
7 | 9 | 失败 |
8 | 7 | 成功 |
8 | 8 | 失败 |
8 | 9 | 失败 |
运行结果为“成功”的输出如下:
期待的url出现了。
我记得在重装前java7和8都用过,那么那时候我用的应该是tomcat7或以下的版本了。
---更新---
按道理java8和tomcat8应该是可以一起运行的(别人的博客和官网上都这么说),那为什么我测试出来却是失败的呢。后来我重新创建了一个项目,将之前的项目的源代码、依赖信息、资源文件等逐个复制到新项目中后再运行,发现能够正常访问,不出现404了。只是控制台仍旧不输出url,并且locahost:8080不能打开tomcat首页,只能自己输入localhost:8080/my_project来访问我正开发的项目。