springboot项目支持war部署tomcat

最近在学校spring boot 在网络上学校到简单的启动spring boot项目,也搭建好了,但时实际状况个人spring boot项目是要发布到tomcat中的,今天,随意打了个war包发布到tomcat中后,访问路径和在myeclipse中启动访问路径不一样。且有一些在myeclipse中能够访问的连接都变成了404.web

经过在网络上搜索找到了解决方案,同时根据本身的解决项目作对应的修改。这个博客地址找不到了,这里感到抱歉。spring

个人工具和项目搭建:maven+spring bootapache

开发工具:myeclipsetomcat

开始解决问题。网络

War包发布,关键在于maven的配置文件pop.xml。关键的地方:eclipse

1/打包方式的指定:maven

  <modelVersion>4.0.0</modelVersion>ide

  <groupId>gateway</groupId>工具

  <artifactId>gateway</artifactId>开发工具

  <packaging>war</packaging>打包方式指定war

  <version>0.0.1-SNAPSHOT</version>

 

2/在plugin标签中指定bulid方式位war

  <plugin>      

   <groupId>org.apache.maven.plugins</groupId>      

   <artifactId>maven-war-plugin</artifactId>bulid方式       

   <configuration>      

    <warSourceExcludes>src/main/resources/**</warSourceExcludes> 

    <warName>gateway</warName>      

   </configuration>      

  </plugin>

 

3/添加相似与web配置的spring启动方法。

必须与@SpringBootApplication注解类放到同一级目录下不然回无效果。

个人@SpringBootApplication注解类为

Application

/**

 * 支持tomcat的启动类

 * @author GuoPC

 *

 */

public class SpringBootStartApplication extends SpringBootServletInitializer {

 

  @Override

   protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {

          // 注意这里要指向原先用main方法执行的Application启动类

          return builder.sources(Application.class);

      }

 

}

 

这些配置好,发布到tomcat中就能够正常启动了。

 

5/我在转换是遇到一个路径问题,在使用myeclipse开发是路径为index,这样发布回致使发布后路径404.修改成./index就行了。或者在路径前添加request.getcontextPath()的路径。一样能够解决问题。

相关文章
相关标签/搜索