一、Maven简单介绍
Apache Maven是个项目管理和自动构建工具,基于项目对象模型(POM)的概念。
作用:完成项目的相关操作,如:编译,构建,单元测试,安装,网站生成和基于Maven部署项目。
1、什么是自动构建工具?
1.1 *.java->*.class->run
方式一
javac HelloWorld.java
java HelloWorld
方式二
开发工具eclipse
1.2 如何创建一个struts2的WEB项目(全手动添加相关jar包,还要设置构建路径)
2、常用的自动构建工具
ant
maven
Gradle android项目管理和构建已使用
二、Maven安装与配置
1、下载
在官网中下载maven包,解压后即可使用
注:在这里需要注意,解压后的文件夹所存放的路径不能存在中文,不然会有问题
2、配置maven环境变量
鼠标右键点击我的电脑 —> 点击属性 —> 选择高级系统设置 —> 环境变量 —> 在系统环境变量中配置
MAVEN_HOME、M2_HOME 和 Path:
环境变量MAVEN_HOME和M2_HOME的值为maven的根目录,然后在Path环境变量里加入“%MAVEN_HOME%\bin;%M2_HOME%\bin;”即可
验证是否配置成功:
在doc窗口中执行命令“mvn –version” ,当出现如下版本信息时,表示环境变量配置成功了。
温馨提示:验证maven是否配置成功有一个前提,你电脑上配置了jdk的环境变量。
三、将maven集成到eclipse中
1、配置本地仓库
修改“MAVEN_HOME\conf”下的setting.xml文件,指定一个路径为你的本地仓库路径:
找到如下代码的位置,
2、maven插件安装与配置
注:eclipse4.0以上已经安装好了,无需额外配置
1. 设置maven安装路径、指定setting.xml文件
▷ ▷
▼
◁ ◁
▼
每配置完一步,记得点 ‘Apply’ 应用
四、Maven的使用
1、创建web项目
▷ ▷
▼
然后点击完成,由于我们的本地仓库是空的,eclipse会下载一些插件到本地仓库中,所以第一次新建项目会很慢。
这里需要注意,下载插件的过程中不要关闭eclipse(eclipse右下角会显示插件下载的进程),否则会为以后带来不必要的错误。
插件下载完后项目是这样的:
在Markers窗口中可以看到maven的错误信息:
maven 是不会默认集成web容器的,要使用tomcat的话,需要在maven中导依赖。
所有的jar包都在pom.xml中添加:
在导依赖之前,是需要进行一些配置的,将下面画红线的部分copy到pom.xml中
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
修改web.xml文件:
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>
前后对比
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<!-- 这里有两个3.1,由于我们之前配置的是1.8的jdk,所以这里配置3.1, 1.8对应3.1 , 1.7对应3.0 -->
<display-name>Archetype Created Web Application</display-name>
</web-app>
改好之后还没完,
鼠标右键点击之前新建的maven项目,然后点击 Properties,选择Project Faces:
这里需要改两个地方:一个是java的jdk版本、一个是web的版本,改成之前配置的。 (1.8对3.1 , 1.7对3.0)
·首先改jdk:
然后改web(这里注意,直接改是会报错的,):
把web前面的勾去掉,将版本改为3.1,然后点 Apply
下一步看图:
点击提示后会弹出下面这个页面:
改好后点ok会回到上一个页面,点Apply and Close,然后右键项目,更新一下就行了。
至此配置完成!
配置好之后,会发现项目还是报错,
servlet的jar包依旧没有,现在就可以去pom.xml中导依赖了:
1、去中央仓库找jar包: https://mvnrepository.com/
搜索servlet:
将上面划红线的代码复制下来, 粘贴至pom.xml中,按钮ctrl+s保存会自动下载我们导的依赖:
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.csdn</groupId>
<artifactId>maven_test</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>maven_test Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>maven_test</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
下载完后会发现项目没报错了:
至此,所有操作已经完成!
五、号外
1、maven的层级结构
src/main/java 目录放java文件
src/main/resources 目录放配置文件(如struts2的配置文件)
src/test/java 目录放测试文件
2、私服的配置
这里配置的为阿里云的私服, 将阿里云的镜像copy进去就行了
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
验证是否配置成功,在maven项目中导jar包的依赖,如果该jar包下载成功,则配置成功