[笔记]spring boot打包jar和war
来源:互联网 发布:水平很高的网络词 编辑:程序博客网 时间:2024/05/24 23:14
打包jar
Spring官网Guides下任意一个例子,比如最简单的Building a RESTful Web Service打包war
参考Spring Boot文档 Traditional deployment 85.1 Create a deployable war file
或例程 spring-boot-sample-war按例程看,如果
@SpringBootApplication
的class直接继承了SpringBootServletInitializer
,不用重写config
方法也是可以的(builder.main(getClass())
、get的就是应用class)。打包一个又能发布于tomcat又能
java -jar
直接跑的war
2的参考文档里有:If you’re using the Spring Boot build tools, marking the embedded servlet container dependency as provided will produce an executable war file with the provided dependencies packaged in a lib-provided directory.
另外:
Maven 66.2 Packaging executable jar and war files
Gradle 67.3 Packaging executable jar and war files观察几种配置的发布包子目录和其下jar包,并比较MENIFEST.MF:
bootRun时有:Start-Class: hello.ApplicationSpring-Boot-Classes: BOOT-INF/classes/Spring-Boot-Lib: BOOT-INF/lib/Main-Class: org.springframework.boot.loader.JarLauncher
不过关心的是war包:
Start-Class: hello.ApplicationSpring-Boot-Classes: WEB-INF/classes/Spring-Boot-Lib: WEB-INF/lib/Main-Class: org.springframework.boot.loader.WarLauncher
应该是丢给tomcat时、tomcat只检查servlet定义的WEB-INF/lib路径,但
java -jar
时、Spring的WarLauncher还引入了存放着tomcat相关jar的lib-provided
目录:@Overridepublic boolean isNestedArchive(Archive.Entry entry) { if (entry.isDirectory()) { return entry.getName().equals(WEB_INF_CLASSES); } else { return entry.getName().startsWith(WEB_INF_LIB) || entry.getName().startsWith(WEB_INF_LIB_PROVIDED); }}
所以两种都能跑。
- [笔记]spring boot打包jar和war
- spring boot -- 打包jar,war(一)
- Spring Boot打包war jar 部署tomcat
- Spring boot打包war、jar部署tomcat
- spring boot 打包war
- Spring Boot 打包war
- spring boot war 打包
- Spring maven打包成jar和war
- spring boot项目打包成jar或者war包
- spring boot 打包从jar转换成war
- .jar 和 .war打包
- spring boot -- 打包jar,war(二)打成war包,mapper文件扫描不到
- Spring Boot 部署(jar和war的区别)
- spring boot executable jar/war 原理
- spring boot 项目由jar转war
- spring-boot 打包成war包
- Linux下打包压缩war,解压war和jar命令
- Spring Boot Maven 打包可执行Jar文件!
- hdoj 2003
- 手把手教你用vue-cli、webpack、vue-router、vue-resource构建单页应用(SPA)
- windows安装redis
- 【编程】链表排序问题
- Css 逻辑运算符
- [笔记]spring boot打包jar和war
- GitHub项目上传到JitPack生成开源库
- Kotlin-Android世界的一股清流-流程控制
- 通过nodejs安装下载插件的一些注意事项
- 2017春高级软件工程学习总结
- java过滤器的作用和工作原理
- Python相关文章索引(8)
- TabLayout更改下划线长度和内容保持一致
- hdoj 2004