创建父工程

父工程注意不使用maven的模板

得出的样子:

然后创建子工程:注意右键父工程创建module,或者file-new-module,然后选parent

注意这里是在父工程文件夹里面。我的子工程也是没有使用maven模板

https://blog.csdn.net/AIU_IU/article/details/71844568 可以参考这个链接里面的,就是把Java文件夹标记为source root,resource文件夹标记为resource root。不过在引入springboot之后好像会帮你自动标记。

在普通的maven工程中使用springboot的方法1:

父工程引入:(引入这个是为了说明版本号)

    <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.9.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent>

然后子工程引入:

    <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>

这个测试你看需要。

方法2:

直接在子工程引入:

    <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.1.9.RELEASE</version></dependency></dependencies>

这里把版本号都说明了。

引入springboot的依赖后,在project structure里就可以看到:下面这个spring的标志

实际使用spring initializr创建springboot工程,里面选择web模块的时候,就是相当于帮你在maven里加上一个spring-boot-starter-parent的parent,用来说明版本号,方便统一管理。然后再在下面加入spring-boot-starter-web,没有版本号,它是引用parent里的,还有一个spring-boot-maven-plugin的编译插件。接着就是给你加了个java包,然后有个入口类,然后配置文件里有个propertties文件,。其实这些我们都可以自己加的,没啥区别。

springboot真正定义各种依赖的版本的文件是在:

spring-boot-dependencies-2.1.9.RELEASE.pom

然后看创建maven父子工程的意义:

参考:https://blog.csdn.net/J080624/article/details/54693581

我理解第一个就是:在父工程中声明版本号,然后在子工程就不需要声明版本号了,只需要引入groupid和artificial即可。默认使用父工程的版本号,是一种继承关系。

我的第二个理解就是利用properties标签升级版本号。但是这个不太理解,应该是只能针对一堆都是一样的版本的字符串变量替换吧。不对,这里可以定义多个标签,这样就可以进行统一管理了。

然后还有一个引入版本号的方法:https://blog.csdn.net/vtopqx/article/details/79034835

就是 <dependencyManagement>标签。下面这段话很不错:

dependencyManagement里只是声明依赖,并不自动实现引入,因此子项目需要显示的声明需要用的依赖。如果不在子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目中继承该项,并且version和scope都读取自父pom;另外如果子项目中指定了版本号,那么会使用子项目中指定的jar版本。

————————————————

版权声明:本文为CSDN博主「漫天雪_昆仑巅」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/vtopqx/article/details/79034835

反正就是一个类似父工程的作用。我想着它的产生是为了不好引入多个parent标签的原因。

一般来说,想看引入的版本,直接搜即可。ide都有界面会显示这个。

感觉收获挺多,更像一个系统的理解。

idea创建maven工程_maven创建父子工程 springboot自动配置相关推荐

  1. idea中创建maven依赖下的web工程(一)----用户登录界面

    如果你对idea中创建maven依赖下的web工程不是很了解,请参见上一篇博客--idea中创建maven依赖下的第一个web工程 各路大神对于idea的基本操作已经非常的熟悉了, 嗯,我还是一只入门 ...

  2. eclipse创建springboot项目_创建SpringBoot自动配置项目:Starter测试使用

    Starter 测试使用 完成了 starter 项目的创建.发布之后,在 Spring Boot 项目中便可以直接使用了,下面简单介绍一-下 Starter 测试使用步骤,其中省略掉了 Spring ...

  3. maven添加子工程_Maven建立父子项目和跨项目调用内容的步骤—佳佳小白

    设计层面 (1)服务端和客户端肯定是分开写的,另外还有一个公共的项目,比如一些实体类等都是可以作为公共的类放到这个公共的项目. (2)这样来说,子项目至少有三个,server(服务层子项目).web( ...

  4. eclipse创建maven项目的创建

    更多免费教学文章请关注这里 操作一.点击file->Project 操作二.在搜索框中搜索maven 点击Maven Project->Next 操作三.红框处打勾后,点Next 操作四. ...

  5. maven 安装_Maven的下载、安装、配置以及验证操作

    Apache Maven 1)官网下载 Liunx系统:Binary tar.gz archiveapache-maven-3.6.1-bin.tar.gz Windows系统:Binary zip ...

  6. Idea创建maven父子工程及其依赖关系

    1.先不使用骨架创建maven项目 2.删除src目录,因为是父项目,所以不需要src 3.创建子工程 1.创建模块 2.创建完毕POM文件自动改变 4.父子工程之间的maven依赖 1.先不使用骨架 ...

  7. maven安装、配置以及IDEA创建maven项目(Maven的Web项目)

    1. Maven下载.安装 去Maven官网下载相应的maven版本(一般maven和jdk版本有对应关系,jdk1.8对应maven3.3.9),下载后解压到你想放的位置即可. 2. Maven配置 ...

  8. 解决创建Maven Project出现的项目报错问题

    创建Maven Project往往会出现项目报错,主要有两方面报错,一是tomcat,二是jdk.怎么解决呢?待小编细细道来. Maven Project的创建: 1.创建Maven Project: ...

  9. IDEA中创建Maven Web项目(两种方式)

    IDEA中创建Maven Web项目 一.使用骨架(项目模板)创建Maven Web项目 二.不使用骨架直接创建 一.使用骨架(项目模板)创建Maven Web项目 选择Web项目骨架,创建项目 删除 ...

  10. IDE创建maven项目——vscode的maven项目使用

    目录 maven开发 1.maven配置 1.1.进入设置 1.2.进行配置 2.创建maven 1.1.创建 maven开发 1.maven配置 1.1.进入设置 打开vscode进入文件--> ...

最新文章

  1. java 本地 交互图_Java与UML交互图
  2. java中String类是什么_Java中的String类
  3. VC++ 中MSDataGrid控件的使用
  4. 常用代码整理(重要)
  5. Nancy 学习-视图引擎 继续跨平台
  6. Linux下开启/关闭防火墙命令
  7. Entity Framework 6.3 和 EF Core 3.0 路线图
  8. dbeaver 数据转化 mapping_Python机器学习实例:数据竞赛-足球运动员身价估计
  9. mysql 在查询语句返回的列中包含一列表示该条记录在整个结果集中的行号
  10. 火星人敏捷接开发手册 2011-09-12
  11. 对VLAN,TRUNK,VTP和CHANNEL实验总结
  12. [BZOJ2733] [HNOI2012] 永无乡 (splay启发式合并)
  13. Android修改了sdk里面的apk编译push进机器不生效问题
  14. tp5完全开发手册_TP5.1解决跨域
  15. TransE算法原理与代码解析(2021-06-22)
  16. 发电厂计算机控制系统,火电厂dcs控制系统
  17. Linux无头浏览器的自动化测试实现
  18. k8s查找所有pod_k8s---pod常用操作
  19. python刷微博转发_一个简单的python刷新浪微博粉丝小程序
  20. JAVA的异常处理机制有什么好处,你造吗?

热门文章

  1. ios整理(五)小应用-重力感应
  2. 去掉Tomcat的管理页面
  3. OC第七节——内存管理
  4. Linux Rsync服务详解(一)——Rsync基本命令与使用
  5. Python3实现文件名排序
  6. H3C 静态路由的配置
  7. 局域网IP被抢占后如何强制夺回
  8. 如何在本地使用markdown进行博客编辑
  9. 路径规划之 A* 算法 1
  10. 通过selenium突破极验验证实现登录