AC的简单博客 - SpringBoot
type: channel
link: https://acdiao.com/index.php/tag/SpringBoot/
items: springboot在tomcat下启动失败 无效 配置的解决方案 无法启动

springboot在tomcat下启动失败 无效 配置的解决方案 无法启动
type: item
date: 2020-02-02T14:15:00+08:00
description: 发生情况项目在部署到tomcat下的时候怎么都没有springboot的初始化信息，于是百度搜了一下。发现都在说的是缺少了SpringBootServletInitializer这个东东，然后加上去了，还是没有效果。一直在排查一直在测试，最后在某一次偷懒的过程中发现了问题因为每次我部署程序都是直接把代码丢到tomcat的webapp目录下，需要来回的复制，测试起来很麻烦因此就直接想到了将目录设置为那个不就行了吗，于是在server.xml中配置了一句：<Context path="" docBase="D:\GitPath\JavaWeb\XXXX\XXXX-1.0-SNAPSHOT" debug="0" reloadable="true" />这里配置好你的项目的所在路径，然后就神奇的启动了。没想到一次偷懒居然真的能搞出来注意代码中的appBase和docBase不要指向同一个目录appBase会将项目下的文件夹当做一个app来进行处理，因此全部代码放在根目录并没有用，但是可以用一个文件夹来承载至于具体原理，可以这么理解：用户根据网址的host进行访问的时候会对应该host下的所有部署appBase下的war包会部署为一个appappBase下的目录会部署为一个app此时再通过context可以指定访问目录和代码docBase的映射关系因此这么写应该也是对的：webapp目录下建立ceshi文件夹，并将代码放在这里 <Context path="/" docBase="ceshi" debug="0" reloadable="true" /> 然后直接访问localhost:端口应该可以直接访问你要的app以上仅为个人感觉，需要一定的证实 ::aru:diving::