1修改本地仓库
①默认本地仓库位置:~\.m2\repository
~表示当前用户的家目录,例如:C:\Users\[你当前登录系统的用户名]
②指定本地仓库位置的配置信息文件:apache-maven-3.2.2\conf\settings.xml
③在根标签settings下添加如下内容:<localRepository>[本地仓库路径,也就是RepMaven.zip的解压目录]</localRepository>
2 maven的目录结构 必须为下图的形式
①目录结构
|---src
|---|---main
|---|---|---java
|---|---|---resources
|---|---test
|---|---|---java
|---|---|---resources
|---pom.xml
1) 创建约定的目录结构
【1】 根目录:工程名 Hello
【2】 Src目录:源码
【3】 Pom.xml文件:Maven工程的核心配置文件
【4】 Main目录:存放主程序
【5】 Test目录:存放测试程序
【6】 Java目录:存放JAVA源文件
【7】 Resources目录:存放框架或其他工具的配置文件
常用的Maven命令
注意:执行与构建过程相关的Maven命令,必须进入pom.xml所在目录
与构建过程相关的:编译、测试、打包、、、、、、、
常用命令:
1、 mvn clean:清理
2、 mvn compile:编译测试程序
3、 mvn test-compile : 编译测试程序
4、 mvn test :执行测试
5、 mvn package:打包
6、 mvn install :安装
7、 mvn site:生产站点
三)坐标 gav
6.2 Maven 的坐标 使用如下三个向量在 Maven 的仓库中唯一的确定一个Maven 工程。[1]groupid:公司或组织的域名倒序+当前项目名称
<groupid>com.nari.maven < /groupid >
[2]artifactId:当前项目的模块名称
< artifactId >Hello</ artifactId>
[3]version:当前模块的版本
< version>0.0.1-SNAPSHOT</version>
依赖的标签
<dependency>
<groupId>com.maven</groupId>
<artifactId>Hello</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
打包方式 pom\ web工程为war\java工程为JAR创建一个Maven工程作为父工程。打包的方式POM。
<modelVersion>4.0.0</modelVersion>
<groupId>com.atguigu.maven</groupId>
<artifactId>ParentTest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
子工程中声明对父工程的引用。
<!-- 在子工程中声明对父工程是引用 -->
<parent>
<groupId>com.atguigu.maven</groupId>
<artifactId>ParentTest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 以当前文件文基准的父工程pom。xml文件的相对路径 -->
<relativePath>。。/ParentTest/pom.xml</relativePath>
</parent>
将子工程中的坐标与父工程的坐标的重复的内容删除
在父工程中统一管理junit依赖
<!-- 配置子工程的依赖的管理 -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
在子工程中删除junit依赖的版本号部分
8聚合
作用:一键安装各个模块的工程。
配置方式:在一个总的聚合工程中配置各个参与聚合的模块。
<!-- 聚合各个模块 -->
<modules>
<module>../Hello</module>
<module>../HelloFriend</module>
<module>../MakeFrinds</module>
</modules>