Maven学习总结(一)——Maven入门 ╰半橙微兮° 2022-08-04 08:47 157阅读 0赞 ## 一、Maven的基本概念 ## **Maven(翻译为"专家","内行")是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理**。 ### 1.1、项目构建 ### 项目构建过程包括【清理项目】→【编译项目】→【测试项目】→【生成测试报告】→【打包项目】→【部署项目】这几个步骤,这六个步骤就是一个项目的完整构建过程。 ![Image 1][] 理想的项目构建是高度自动化,跨平台,可重用的组件,标准化的,使用maven就可以帮我们完成上述所说的项目构建过程。 ### 1.2、依赖管理 ### 依赖指的是jar包之间的相互依赖,比如我们搭建一个Struts2的开发框架时,光光有struts2-core-2.3.16.3.jar这个jar包是不行的,struts2-core-2.3.16.3.jar还依赖其它的jar包,依赖管理指的就是使用Maven来管理项目中使用到的jar包,Maven管理的方式就是“自动下载项目所需要的jar包,统一管理jar包之间的依赖关系”。 ### 1.3、使用Maven的好处 ### Maven中使用约定,约定java源代码代码必须放在哪个目录下,编译好的java代码又必须放到哪个目录下,这些目录都有明确的约定。 Maven的每一个动作都拥有一个生命周期,例如执行 mvn install 就可以自动执行编译,测试,打包等构建过程 只需要定义一个pom.xml,然后把源码放到默认的目录,Maven帮我们处理其他事情 使用Maven可以进行项目高度自动化构建,依赖管理(这是使用Maven最大的好处),仓库管理。 ## 二、Maven下载 ## 下载地址:[http://maven.apache.org/download.cgi][http_maven.apache.org_download.cgi] ![Image 1][] 下载完成后,得到一个压缩包![Image 1][],解压,可以看到maven的组成目录 ![Image 1][] Maven目录分析 * bin:含有mvn运行的脚本 * boot:含有plexus-classworlds类加载器框架 * conf:含有settings.xml配置文件 * lib:含有Maven运行时所需要的java类库 * LICENSE.txt, NOTICE.txt, README.txt针对Maven版本,第三方软件等简要介绍 ## 三、Maven安装 ## ** 1、首先要确保电脑上已经安装了JDK(要jdk 1.6+的版本),配置好JDK的环境变量,使用如下的两个命令检查检查JDK安装的情况。** 1 Echo %JAVA_HOME% 2 Java -version ![Image 1][] ** 2、对apache-maven-3.2.3-bin.zip进行解压缩** 对apache-maven-3.2.3-bin.zip进行解压缩,例如解压到如下目录(**解压目录最好不要有中文**) ![Image 1][] ** 3、设置系统环境变量:MAVEN\_HOME** ![Image 1][]![Image 1][] **4、设置环境变量Path,将%MAVEN\_HOME%\\bin加入Path中,一定要注意要用分号;与其他值隔开,如下图所示:** ** ![Image 1][]** ** %MAVEN\_HOME%\\bin**代表的就是"E:\\apache-maven-3.2.3\\bin"目录 **5、验证Maven安装是否成功** 打开cmd窗口 ![Image 1][] 输入"mvn –v"命令 查看Maven的相关信息,如下图所示: ![Image 1][] 能够出现这样的信息就说明Maven的安装已经成功了。 ** 6、设置MAVEN\_OPTS环境变量(可选配置)** 由于Maven命令实际上是执行了Java命令,所以可以通过JAVA命令参数的方式来设置MAVEN运行参数。MAVEN\_OPTS环境变量正是用于此用途 MAVEN\_OPTS -Xms128m -Xmx512m,分别设置JVM的最小和最大内存,如下图所示: ![Image 1][] ## 四、Maven的简单使用 ## ### 4.1、Maven项目的目录约定 ### MavenProjectRoot(项目根目录) |----src | |----main | | |----java ——存放项目的.java文件 | | |----resources ——存放项目资源文件,如spring, hibernate配置文件 | |----test | | |----java ——存放所有测试.java文件,如JUnit测试类 | | |----resources ——存放项目资源文件,如spring, hibernate配置文件 |----target ——项目输出位置 |----pom.xml ----用于标识该项目是一个Maven项目 ### 4.2、手动创建Maven项目,使用Maven编译 ### 1、创建项目根文件夹,例如Maven01 ![30175308-684b7f000dbc43f6850685970d2ffc68.png][] 2、在Maven01文件夹中创建“pom.xml”文件,如下图所示: ![30175341-e03f57eeea3940209064d8f5b33127ab.png][] pom.xml文件中的内容如下: ![复制代码][copycode.gif] 1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache.org/POM/4.0.0" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 5 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 6 <!--所有的Maven项目都必须配置这四个配置项--> 7 <modelVersion>4.0.0</modelVersion> 8 <!--groupId指的是项目名的项目组,默认就是包名--> 9 <groupId>cn.gacl.maven.hello</groupId> 10 <!--artifactId指的是项目中的某一个模块,默认命名方式是"项目名-模块名"--> 11 <artifactId>hello-first</artifactId> 12 <!--version指的是版本,这里使用的是Maven的快照版本--> 13 <version>SNAPSHOT-0.0.1</version> 14 </project> ![复制代码][copycode.gif] 3.编写Java类文件,Maven项目规定,所有的\*.java文件必须放在src目录下的main目录下的java目录中,在Maven01项目根目录中创建一个src目录,然后在src目录中创建main目录,在main目录中再创建java文件夹,如下图所示: ![30175559-b32a0f5557904e3da841c5267a7a6396.png][]![30175622-74a7c767ceec44ceaa86c8188853a104.png][]![30175645-008863657f9d4996b8da1e14867e6a24.png][] 在java文件夹下创建一个Hello.java文件,如下图所示 ![30175800-2704e27fd5d84806b4a34c6424f15f3f.png][] 在Hello.java文件中编写如下代码: 1 public class Hello{ 2 public static void main(String[] args){ 3 System.out.println("Hello Maven"); 4 } 5 } 4.使用Maven编译Hello.java,首先进入到项目根目录,然后使用命令”**mvn compile**”进行编译,如下图所示: ![Image 1][] ![30180009-2d556cede4d944f5adf3649416f556d4.png][] 使用Maven编译完成之后,在项目根目录下会生成一个target文件夹,如下图所示: ![30180051-dd2035ddbe274630a6bf2032f09ab267.png][] 打开target文件夹,可以看到里面有一个classes文件夹,如下图所示: ![Image 1][] classes文件夹存放的就是编译成功后生成的.class文件,如下图所示: ![30180202-4d73372858a34901b4272920ae64984c.png][] 5.使用"**mvn clean**"命令清除编译结果,也就是把编译生成的target文件夹删掉,如下图所示: ![Image 1][] 执行完"**mvn clean**"命令后,target文件夹就会被删除了。 ## 五、修改从Maven中心仓库下载到本地的jar包的默认存储位置 ## 从Maven中心仓库下载到本地的jar包的默认存放在”$\{user.home\}/.m2/repository”中,$\{user.home\}表示当前登录系统的用户目录(如"C:\\Users\\gacl"),如下图所示 ![Image 1][] ![Image 1][] Jar包存放在这个位置不太好,我们希望能够自己定义下载下来的jar包的存放位置,因此我们可以自己设置下载到本地时的jar包的存放目录。 在“E:\\”目录下创建一个“repository”文件夹 ![Image 1][] 找到apache-maven-3.2.3\\conf目录下的settings.xml文件,如下图所示: ![Image 1][] 编辑setting.xml文件,如下图所示: ![Image 1][] 加上下面的代码 1 <localRepository>E:/repository</localRepository> ![Image 1][] 这样就可以把jar包下载到我们指定的**E:/repository**目录中了,如下图所示: ![Image 1][] 把jar包下载到本地的好处就是,当编译时,会优先从本地的jar包去找,如果本地存在,就直接拿来用,如果不存在,就从Maven的中心仓库去下载。如下图所示: ![Image 1][] 第一次执行"mvn compile"和"mvn clean"这两个命令时,Maven会去中央仓库下载需要的jar包,而第二次执行这两个命令时,由于所需的jar包已经在本地的仓库中存储,所以就可以直接拿来用了,这样就省去了去中央仓库下载jar包的时间。 以上就是Maven的简单入门讲解。 [Image 1]: [http_maven.apache.org_download.cgi]: http://maven.apache.org/download.cgi [30175308-684b7f000dbc43f6850685970d2ffc68.png]: /images/20220731/b0f89c606dad42aeb8f252da9c953d6b.png [30175341-e03f57eeea3940209064d8f5b33127ab.png]: /images/20220731/636433ec13b14f1b96b1972f1b5e943d.png [copycode.gif]: /images/20220731/aa3e701a3ab94ebb95c41cb69b8aeefa.png [30175559-b32a0f5557904e3da841c5267a7a6396.png]: http://images.cnitblog.com/blog/289233/201312/30175559-b32a0f5557904e3da841c5267a7a6396.png [30175622-74a7c767ceec44ceaa86c8188853a104.png]: http://images.cnitblog.com/blog/289233/201312/30175622-74a7c767ceec44ceaa86c8188853a104.png [30175645-008863657f9d4996b8da1e14867e6a24.png]: /images/20220731/ed13e8a64fa849d582831a0c1978ee0f.png [30175800-2704e27fd5d84806b4a34c6424f15f3f.png]: /images/20220731/13237cb71a234101a96cb424b881346d.png [30180009-2d556cede4d944f5adf3649416f556d4.png]: /images/20220731/8de684e3e04a4428a7be6136525bb91f.png [30180051-dd2035ddbe274630a6bf2032f09ab267.png]: /images/20220731/849c30a22d764026960424c75518f06e.png [30180202-4d73372858a34901b4272920ae64984c.png]: /images/20220731/d861908ad8cc4f0591a4cdc30218bb5f.png
还没有评论,来说两句吧...