约定大于配置大于编码
新建工作空间
1.新建一个maven工程(当作总工程,下面就新建小的moudle),配置名字,包名,之类的。
出现这个爆红
找不到插件 ‘maven-clean-plugin:3.1.0‘
解决方法:加入代码: 内联代码片
。
<groupId>org.apache.maven.plugins</groupId>
插入位置
maven爆红
解决方法:原因没有导入相应依赖,导入依赖。
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>3.0.0</version>
</dependency>
2.设置字符编码为UTF-8
3.注解生效激活
4.java编译版本选择
5.文件类型过滤,就和git提交过滤一样,将指定的后缀文件不显示出来,让目录结构更好看。
eg:
配置过滤文件
配置之后过滤了的就没了。
对父工程pom文件进行操作
前置知识
Maven中pom.xml的packaging类型
项目的打包类型:pom、jar、war
项目中一般使用maven进行模块管理,每个模块下对应都有一个pom文件,pom文件中维护了各模块之间的依赖和继承关系。项目模块化可以将通用的部分抽离出来,方便重用;修改一部分代码不再是build整个项目,缩短了build时间;此外各模块都有自己的pom文件,结构更清晰。
使用maven进行模块划分管理,一般都会有一个父级项目,pom文件除了GAV(groupId, artifactId, version)是必须要配置的,另一个重要的属性就是packaging打包类型,所有的父级项目的packaging都为pom,packaging默认是jar类型,如果不作配置,maven会将该项目打成jar包。作为父级项目,还有一个重要的属性,那就是modules,通过modules标签将项目的所有子项目引用进来,在build父级项目时,会根据子模块的相互依赖关系整理一个build顺序,然后依次build。
而对于各个子项目,需要在其对应的pom文件开头申明对父级项目的引用,通过GAV实现。对于子项目自己的GAV配置,GV如果不配置,则会从父级项目的配置继承过来。子模块可通过dependencies标签来添加自己的依赖,此外子类项目的packaging值只能是war或者jar,前面已经说过,packaging默认是jar类型。如果是需要部署的项目,则需要打包成war类型,如果只是内部调用或者是作服务使用,则推荐打包成jar类型。
因为我们创建的是一个父项目所以说应该设置为pom,后面将modules导入,这样方便统一管理依赖。
<dependencyManagement>
Maven 使用dependencyManagement 元素来提供了一种管理依赖版本号的方式。
通常会在一个组织或者项目的最顶层的父POM 中看到dependencyManagement 元素。
使用pom.xml 中的dependencyManagement 元素能让所有在子项目中引用一个依赖而不用显式的列出版本号。
Maven 会沿着父子层次向上走,直到找到一个拥有dependencyManagement 元素的项目,然后它就会使用这个
dependencyManagement 元素中指定的版本号。
这样做的好处就是:如果有多个子项目都引用同一样依赖,则可以避免在每个使用的子项目里都声明一个版本号,这样当想升级或切换到另一个版本时,只需要在顶层父容器里更新,而不需要一个一个子项目的修改 ;另外如果某个子项目需要另外的一个版本,只需要声明version就可。
* dependencyManagement里只是声明依赖,并不实现引入,因此子项目需要显示的声明需要用的依赖。
* 如果不在子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中写了该依赖项,并且没有指定具体版本,
才会从父项目中继承该项,并且version和scope都读取自父pom;
* 如果子项目中指定了版本号,那么会使用子项目中指定的jar版本。
跳过单元测试
构建第一个子模块
也是建立一个maven工程
一个maven项目就只有这些东西
resources new yml文件,springboot的配置文件
标签:maven,依赖,项目,Spring,jar,学习,pom,子项目,Cloud From: https://www.cnblogs.com/java-lp-company/p/16899915.html