springboot创建parent_理解spring-boot-starter-parent
理解spring-boot-starter-parent
通过spring initializr,我们可以快速构建一个springboot应用,如果你选择的是Maven来管理项目,在默认的pom文件中有这么一个section:
org.springframework.boot
spring-boot-starter-parent
2.1.1.RELEASE
它表示当前pom文件从spring-boot-starter-parent继承下来,在spring-boot-starter-parent中提供了很多默认的配置,这些配置可以大大简化我们的开发。
Parent Poms Features
通过继承spring-boot-starter-parent,默认具备了如下功能:
Java版本(Java8)
源码的文件编码方式(UTF-8)
依赖管理
打包支持
识别插件配置
识别不同的配置,如:application-dev.properties 和 application-dev.yml
以上继承来的特性有的并非直接继承自spring-boot-starter-parent,而是继承自spring-boot-starter-parent的父级spring-boot-dependencies
需要特别说明的是,application-dev.properties 和 application-dev.yml支持spring风格的占位符(${…}),但是Maven项目把对占位符的支持改为(@..@),可以通过设置Maven属性resource.delimiter来重置回去。
继承spring-boot-starter-parent后,大大简化了我们的配置,它提供了丰富的常用的默认的依赖的版本定义,我们就不需要再次指定版本号:
org.springframework.boot
spring-boot-starter-web
假设我们需要定制自己的版本号,可以通过下面的方式重写:
Fowler-SR2
不继承spring-boot-starter-parent构建springboot项目
有时候项目可能有自己的parent poms,Maven只允许定义一个parent pom,这时的项目虽然没有继承自spring-boot-starter-parent,但是依赖管理始终需要的,可以通过如下配置引入spring-boot-dependencies的依赖管理功能:
org.springframework.boot
spring-boot-dependencies
2.2.0.BUILD-SNAPSHOT
pom
import
那么在这种情况下要重写依赖的版本号就需要用另外的方式:
org.springframework.data
spring-data-releasetrain
Fowler-SR2
pom
import
org.springframework.boot
spring-boot-dependencies
2.2.0.BUILD-SNAPSHOT
pom
import
除了依赖管理,打包也是需要的:
org.springframework.boot
spring-boot-maven-plugin
1.4.0.RELEASE
true
repackage
增加以上配置后就可以使用熟悉的mvn pacakge成一个jar了。
springboot创建parent_理解spring-boot-starter-parent相关推荐
- 深入理解 Spring Boot Starters 原理
2019独角兽企业重金招聘Python工程师标准>>> Spring Boot Starter是在SpringBoot组件中被提出来的一种概念,stackoverflow上面已经有人 ...
- 深入理解 Spring Boot Starters 原理(手写Spring boot Start)
一.Spring Boot Starter诞生原因 Spring Boot Starter是在SpringBoot组件中被提出来的一种概念,stackoverflow上面已经有人概括了这个starte ...
- Spring Boot中parent标签的作用
在Spring Boot的官方示例中,都是让我们继承一个spring的 spring-boot-starter-parent作为parent标签 <parent><groupId&g ...
- 手把手教你定制标准 Spring Boot starter
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 写在前面 我们每次构建一个 Spring 应用程序时,我 ...
- 实现一个 Spring Boot Starter 原来如此简单,读 Starter 源码也不在话下
我是风筝,公众号「古时的风筝」,一个在程序圈混迹多年,主业 Java,另外 Python.React 也玩儿的 6 的斜杠开发者.现已转行程序员鼓励师 Spring Cloud 系列文章已经完成,可以 ...
- 一个项目有两个pom_实现一个Spring Boot Starter超简单,读 Starter 源码也不在话下...
Spring Boot 对比 Spring MVC 最大的优点就是使用简单,约定大于配置.不会像之前用 Spring MVC 的时候,时不时被 xml 配置文件搞的晕头转向,冷不防还因为 xml 配置 ...
- 一个简易上手的短信服务Spring Boot Starter,连傻瓜都会!
作 者:jackieonway 来 源:jianshu.com/u/36510c75d37c 短信服务在用户注册.登录.找回密码等相关操作中,可以让用户使用更加便捷,越来越多的公司都采用短信验证的方式 ...
- 自定义 Spring Boot Starter
一.引言 什么是Spring Boot Starter呢?我们直接来看看官网是怎么介绍的吧. Starters are a set of convenient dependency descripto ...
- 深入理解Spring Boot数据源与连接池原理
Create by yster@foxmail.com 2018-8-2 一:开始 在使用Spring Boot数据源之前,我们一般会导入相关依赖.其中数据源核心依赖就是spring‐boot‐s ...
最新文章
- “ u”到底是做什么的? “ git push -u原始主机”与“ git push原始主机”
- 关于hive开窗函数的问题
- 防止VLAN间的ARP***解决方案
- Mining Precision Interface From Query Logs -- 学习笔记(二)
- 【Blog.Core重要升级】:封装服务扩展层
- java流与文件——对象流和序列化
- python平方数迭代器_Python三大神器之迭代器详解
- python文件是怎么打开_python file怎么打开
- 基于JAVA+SpringMVC+Mybatis+MYSQL的在线作业管理系统
- Mac 修改Hosts文件的方式
- python: 集合操作符和关系符号
- Android 显示文字超过指定长度部分使用省略号表示
- R和RStudio安装包下载
- jeefast 添加非空判断
- PackageManagerService安装应用流程
- 同桌之间那些或暧昧或有趣的事
- OpenCV学习三十四:watershed 分水岭算法
- java分词器和索引器_solr-hbase二级索引及查询解决方案(一)
- 用IAR下载出现 Stack pointer is setup to incorrect alignment. Stack addr = 0xFFFFFFFF 如何解决?
- 危楼还望,叹此意、今古几人曾会? — 夜读南宋词人陈亮《念奴娇·登多景楼》感怀