一、Maven
1. 依赖管理
- 传统的crm项目的jar包是在项目中
- maven开发的crm项目的jar包没有存储在项目中,而jar包存储在jar包仓库中,项目中仅保留了jar包的坐标,保存坐标的文件就是pom.xml
- 当使用maven时,maven会首先去本地仓库寻找jar包,如果没有,在联网的状态去会自动去中央仓库下载jar包
2. 安装
- 首先去官网下载apache-maven-3.6.1-bin.zip压缩包
- 下载完成后将压缩包解压到没有中文路径的目录下
- 设置环境变量:maven的运行是要依赖Java的,所以一定要确保环境变量中有JAVA_HOME
- 验证是否安装成功:mvn -v
3. maven项目标准目录结构
- src/main/java目录:核心代码部分
- src/main/resources目录:配置文件部分
- src/test/java目录:测试代码部分
- src/test/resources目录:测试配置文件
- src/main/webapp目录:放置页面资源,包括js、css、图片资源等
二、常用命令
- 清除项目编译信息,也就是删除target目录,在重新编译前执行
mvn clean
mvn compile
mvn test
- 打包:打包会将main目录下的代码和test目录下的代码都进行编译
mvn package
- 安装:install命令会将项目进行打包,并将打包后的文件安装到本地仓库
mvn install
mvn deploy
三、Maven配置
- 在conf/settings.xml中配置本地仓库路径
- 在idea的settings中搜索maven,进行配置
四、创建maven项目
1. 使用骨架构建maven项目
- 进入idea界面,选择Create New Project,并选择创建maven项目,并按照下图进行选择
- 填写项目相关信息
- 之后一直点击Next,直到项目被idea打开
- 进入idea之后,右下角会有选择Import Changes,点击导入,idea会自动下载项目所需的jar包
- 使用骨架创建的项目是没有resources目录的,需要手动去创建,并将目录设置为配置文件目录,详见下图
2. 不使用骨架构建maven项目(推荐使用)
- 不使用骨架,就是在创建的时候直接点击Next
- 之后的方式都跟使用骨架一样,直到idea打开项目
- 项目打开后,Import Changes
- 最后可以看到项目的目录结构就已经创建完成了,与骨架创建的不同,不使用骨架的时,项目是自带resources目录的,详见下图
3. 配置项目依赖jar包
- 打开pom.xml文件,该文件用于存放jar包的坐标
- 首先先写一个dependencies标签,在这个标签内部可以写多个dependency标签,每一个dependency标签就是一个jar包的坐标,在dependency标签内部根据idea提示将所需jar包的信息补充完整
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>1.3</version>
</dependency>
</dependencies>
- 如果jar包找不到,可以百度“maven中央仓库”,在仓库中搜索jar包,选择任意版本,找到jar包的坐标,并复制到pom中
4. 解决jar包冲突
- 在pom.xml中使用scope标签,使jar包仅在写代码时生效,项目正式运行的时候不生效
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<!--仅在写代码时生效-->
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>1.3</version>
<scope>provided</scope>
</dependency>
</dependencies>