Ubuntu中Tomcat部署Jenkins后访问/jenkins出现资源未找到错误求助
解决Tomcat中Jenkins访问404的问题
嘿,我来帮你搞定这个Jenkins在Tomcat里跑不起来的问题~ 你遇到的这个错误其实就是Tomcat找不到Jenkins对应的资源(也就是大家常说的404错误),咱们一步步来排查解决:
1. 确认Jenkins war包的部署状态
- 先去Tomcat的
webapps目录瞅一眼,默认路径一般是/opt/tomcat/webapps(要是你自定义了Tomcat安装路径就对应改一下),看看有没有jenkins.war文件,以及它有没有自动解压出jenkins文件夹。 - 要是没自动解压,可能Tomcat没触发自动部署,你可以手动执行解压命令:
cd /opt/tomcat/webapps unzip jenkins.war -d jenkins - 再打开你截图的Tomcat管理控制台,看看Applications列表里有没有
jenkins这个应用,状态是不是running。要是没显示,说明部署没成功,大概率是war包损坏了,重新下载一个Jenkins最新稳定版的war包试试。
2. 查看Tomcat日志找具体原因
日志是排查问题的好帮手,去Tomcat的logs目录重点看这两个日志:
localhost.log:记录本地请求的错误细节catalina.out:Tomcat的主日志,会输出部署过程中的异常信息
你可以用命令实时查看最新日志:
tail -f /opt/tomcat/logs/catalina.out
看看有没有关于Jenkins部署的报错,比如依赖缺失、权限不足这类信息。
3. 排查权限问题
Ubuntu下Tomcat一般是用tomcat用户运行的,如果你是用root用户把Jenkins war包放到webapps目录的,那Tomcat可能没权限读取这个文件:
- 先修改
webapps目录下Jenkins相关文件的权限:sudo chown -R tomcat:tomcat /opt/tomcat/webapps/jenkins* sudo chmod -R 755 /opt/tomcat/webapps/jenkins* - 然后重启Tomcat服务:
sudo systemctl restart tomcat
4. 确认访问路径是否正确
- 注意Tomcat默认端口是8080,没改端口的话,访问路径应该是
http://localhost:8080/jenkins(重点:这里是小写的j,Jenkins部署后上下文路径是小写的,别写成大写的/Jenkins哦) - 要是你给Tomcat配置了虚拟主机或者自定义上下文路径,那得对应调整访问路径,不过默认情况下就是上面这个路径。
5. 检查Java和Jenkins的兼容性
Jenkins对Java版本有要求,最新版本一般需要Java 11或17,你可以用java -version命令看看自己的Java版本:
java -version
要是Java版本太低,要么换个兼容的Java版本,要么降级Jenkins的war包到和你Java版本匹配的版本。
内容的提问来源于stack exchange,提问作者Vicky
相关产品推荐
相关产品推荐

