Spring Boot打包war jar 部署tomcat
转载声明:请务必保留原文链接
原文连接:http://www.cnblogs.com/sunyl/p/7754116.html
概述
1.Spring Boot聚合工程打包war部署Tomcat
2.Spring Boot打包Jar,通过Java -jar直接运行.
3.提供完整pom.xml测试项目 至github
4.项目目前了集成了 Spring Boot + Spring data jpa +Redis集群+dubbo+freemarker 持续更新...
解决问题
1.xxxx中没有主清单属性
2.解决没有web.xml而报错
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war (default-war) on project provider: Error assembling WAR: webxml attribute is required(or pre-existing WEB-INF/web.xml if executing in update mode) -> [Help 1]
版本
1.JDK 1.8
2.Spring Boot 1.5.8
3.apache-tomcat-8.5.23
一.
打包war部署tomcat
1.改写App类 继承SpringBootServletInitializer
2.重写configure方法,返回builder.sources(YouApp.class);
3.添加pom.xml ,如下图
4.修改<packaging>war</packaging>
5.package命令打包
6.可参考 github--> releases--> v0.2 中blog-main-service 它是一个可打包jar且通过java -jar运行的完整项目配置
地址:https://github.com/mmdsyl/BLOG-Microservice/releases
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | public class ManagerApplication extends SpringBootServletInitializer{ // for tomcat @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(ManagerApplication. class ); } public static void main(String[] args) throws InterruptedException { SpringApplication application = new SpringApplication(ManagerApplication. class ); //application.setBannerMode(Banner.Mode.OFF); application.run(args); } } |
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <!--用于解决没有web.xml报错--> <plugin> <artifactId>maven-war-plugin</artifactId> <version>3.0.0</version> </plugin>
二.
打包Jar执行运行
1.标准的Application,不要继承SpringBootServletInitializer
2.修改pom,如图
3.package命令打包
4.可参考 github--> releases--> v0.2 中blog-main-web ,它是一个可打包war可部署tomcat中的完整配置
地址:https://github.com/mmdsyl/BLOG-Microservice/releases
<!--打包成jar--> <!--https://docs.spring.io/spring-boot/docs/current/reference/html/build-tool-plugins-maven-plugin.html--> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步