Maven
对jar包进行统一依赖管理
创建Maven项目
在idea中创建一个Maven项目,在Maven项目中主要有以下两个需要用到:org.pache.maven.archetypes:maven-archetypes-quickstart
:用于普通项目org.pache.maven.archetypes:maven-archetypes-webapp
:用于web项目
创建后会设置坐标:
- GroupId:组织
- AftifactId:项目名
- Version:版本号
项目和仓库做关联
配置文件地址
在配置文件地址中是没有setting.xml文件的,可以从idea自带的maven中复制粘贴,在mac中地址在:
/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3
本地仓库地址默认跟配置文件统一目录
设置自动倒入包
Maven依赖
之后如果需要倒入包,只需要在npm.xml
文件中进行更改
Maven项目结构
Maven生命周期
- clean表示清除,清除编译好的class文件,即清除target目录中的文件
- compile表示编译(生成.class)
- test:该命令会将test目录中的源码进行编译
- install:打包并部署到本地仓库
Maven创建Web项目
创建后需要在main中手动创建一个java目录
执行install打包后会在仓库中创建一个war包,用于部署到服务器上
Maven坐标
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
主要组成有以下几个:
- groupId:组织标识(包名)
- artifactId:项目名称
- version:版本号
- scope:用来控制依赖和编译,测试,运行的classpath关系,有以下几个选项:
compile
:默认编译依赖范围,对于编译、测试、运行三种classpath都有效test
:测试依赖范围,只对于测试classpath有效provided
:对于编译,测试的classpath都有效,但对于运行无效,因为由容器提供,如servlet-apipackaging
:项目的打包方式,常见的有jar和war两种
关联WEB容器
按照idea创建web项目关联Tomcat的方式进行配置
Maven多模块开发
父子工程(聚合工程)
创建方法1:
创建父项目
在创建的maven项目中选择站点模式maven-archetype-site-simple
,父项目主要用于管理jar包
创建子项目
在父目录中点击new module
创建子模块,子模块的路径就在父项目目录下,在main文件夹下新建一个java文件夹,右键Mark Directory As...
模块之间的相互调用
将模块打包成jar包给其他模块调用,在需要调用的模块导入依赖包
创建方法2:
创建空目录
在创建项目时选择Empty Project
创建模块项目
使用new module
创建模块
调用依赖模块
跟第一种方法一样
注意
无论使用哪一种方法,都需要修改一下jdk版本