2 Java -version
![](https://img-blog.csdn.net/20160129154329793?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()
**2、对apache-maven-3.2.3-bin.zip进行解压缩**
对apache-maven-3.2.3-bin.zip进行解压缩,例如解压到如下目录(**解压目录最好不要有中文**)
![](https://img-blog.csdn.net/20160129154352215?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()
**3、设置系统环境变量:MAVEN\_HOME**
![](https://img-blog.csdn.net/20160129154418357?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![](https://img-blog.csdn.net/20160129154425091?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()![]()
**4、设置环境变量Path,将%MAVEN\_HOME%\bin加入Path中,一定要注意要用分号;与其他值隔开,如下图所示:**
**![](https://img-blog.csdn.net/20160129154502459?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()**
**%MAVEN\_HOME%\bin**代表的就是"E:\apache-maven-3.2.3\bin"目录
**5、验证Maven安装是否成功**
打开cmd窗口
输入"mvn –v"命令 查看Maven的相关信息,如下图所示:
![](https://img-blog.csdn.net/20160129154535350?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()
能够出现这样的信息就说明Maven的安装已经成功了。
**6、设置MAVEN\_OPTS环境变量(可选配置)**
由于Maven命令实际上是执行了Java命令,所以可以通过JAVA命令参数的方式来设置MAVEN运行参数。MAVEN\_OPTS环境变量正是用于此用途
MAVEN\_OPTS
-Xms128m -Xmx512m,分别设置JVM的最小和最大内存,如下图所示:
![](https://img-blog.csdn.net/20160129154601413?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()
### 四、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
![](http://images.cnitblog.com/blog/289233/201312/30175308-684b7f000dbc43f6850685970d2ffc68.png)
2、在Maven01文件夹中创建“pom.xml”文件,如下图所示:
![](http://images.cnitblog.com/blog/289233/201312/30175341-e03f57eeea3940209064d8f5b33127ab.png)
pom.xml文件中的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<!--所有的Maven项目都必须配置这四个配置项-->
<modelVersion>4.0.0</modelVersion>
<!--groupId指的是项目名的项目组,默认就是包名-->
<groupId>cn.gacl.maven.hello</groupId>
<!--artifactId指的是项目中的某一个模块,默认命名方式是"项目名-模块名"-->
<artifactId>hello-first</artifactId>
<!--version指的是版本,这里使用的是Maven的快照版本-->
<version>SNAPSHOT-0.0.1</version>
</project>
3.编写Java类文件,Maven项目规定,所有的\*.java文件必须放在src目录下的main目录下的java目录中,在Maven01项目根目录中创建一个src目录,然后在src目录中创建main目录,在main目录中再创建java文件夹,如下图所示:
![](http://images.cnitblog.com/blog/289233/201312/30175559-b32a0f5557904e3da841c5267a7a6396.png)![](http://images.cnitblog.com/blog/289233/201312/30175622-74a7c767ceec44ceaa86c8188853a104.png)![](http://images.cnitblog.com/blog/289233/201312/30175645-008863657f9d4996b8da1e14867e6a24.png)
在java文件夹下创建一个Hello.java文件,如下图所示
![](http://images.cnitblog.com/blog/289233/201312/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 comp****i****le**”进行编译,如下图所示:
![](https://img-blog.csdn.net/20160129154754789?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()
![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=http%3A%2F%2Fimages.cnitblog.com%2Fblog%2F289233%2F201312%2F30180009-2d556cede4d944f5adf3649416f556d4.png&pos_id=img-pOu3oYCA-1714151035444)
使用Maven编译完成之后,在项目根目录下会生成一个target文件夹,如下图所示:
![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=http%3A%2F%2Fimages.cnitblog.com%2Fblog%2F289233%2F201312%2F30180051-dd2035ddbe274630a6bf2032f09ab267.png&pos_id=img-CfTRTNr3-1714151035445)
打开target文件夹,可以看到里面有一个classes文件夹,如下图所示:
![](https://img-blog.csdn.net/20160129154918898?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()
classes文件夹存放的就是编译成功后生成的.class文件,如下图所示:
![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=http%3A%2F%2Fimages.cnitblog.com%2Fblog%2F289233%2F201312%2F30180202-4d73372858a34901b4272920ae64984c.png&pos_id=img-q9NUR3vT-1714151035446)
5.使用"**mvn clean**"命令清除编译结果,也就是把编译生成的target文件夹删掉,如下图所示:
![](https://img-blog.csdn.net/20160129154942867?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()
执行完"**mvn clean**"命令后,target文件夹就会被删除了。
### 五、修改从Maven中心仓库下载到本地的jar包的默认存储位置
从Maven中心仓库下载到本地的jar包的默认存放在”${user.home}/.m2/repository”中,${user.home}表示当前登录系统的用户目录(如"C:\Users\gacl"),如下图所示
![](https://img-blog.csdn.net/20160129155025302?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)![]()
![](https://img-blog.csdn.net/20160129155111272?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
**对象篇**
![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82MTY4MzU2LWIxMTdmNzMyNDJlZjAyMDM?x-oss-process=image/format,png)
![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82MTY4MzU2LWU5ZGY5NGRhODZhZGZjNjY?x-oss-process=image/format,png)
**模块化编程-自研模块加载器**
![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82MTY4MzU2LWUyNWEzOGRhNTU1NTBmOGY?x-oss-process=image/format,png)
**[开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】](https://bbs.csdn.net/topics/618166371)**
aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82MTY4MzU2LWUyNWEzOGRhNTU1NTBmOGY?x-oss-process=image/format,png)
**[开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】](https://bbs.csdn.net/topics/618166371)**
![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82MTY4MzU2LTQ5MGM2MTlhOTI5YjY3Y2U?x-oss-process=image/format,png)