Maven是什么?
Maven是一个项目管理和综合工具。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。
在多个开发团队环境时,Maven可以设置按标准在非常短的时间里完成配置工作。由于大部分项目的设置都很简单,并且可重复使用,Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。
Maven的基本操作:
一些基本的操作,编译,构建,单元测试,安装,网站生成和基于Maven部署项目。
使用Maven构建项目
“mvn package” 来构建项目
使用Maven清理项目
“mvn clean” 来清理项目
使用Maven运行单元测试
“mvn test” 来执行单元测试
将项目安装到Maven本地资源库
“mvn install” 打包和部署项目到本地资源库
生成基于Maven的项目文档站点
“mvn site” 来为您的项目生成信息文档站点
使用“mvn site-deploy”部署站点(WebDAV例子)
“mvn site-deploy” 通过WebDAV部署自动生成的文档站点到服务器
部署基于Maven的war文件到Tomcat
“mvn tomcat:deploy” 以 WAR 文件部署到 Tomcat
首先下载安装以及配置Maven:
首先去官网下载:Maven下载官网
然后下载完毕后 :
然后把它解压到D盘上
配置环境变量
在系统变量下新建下面两个变量名:
配置方式跟jdk有些类似,环境变量MAVEN_HOME和M2_HOME的值为maven的根目录
然后同样在系统变量下的path添加如下变量值:
在PATH环境变量里加入“%MAVEN_HOME%\bin;%M2_HOME%\bin;”即可(注:要添加在JAVA_HOME 的后面)
保存之后去测试是否安装成功 输入win键+R,进入dos命令,输入mvn -version
如果出现如下图的信息 就是安装成功了!
接下来我们用Eclipce去创建一个Maven项目:
进去Eclipce之后右击window 在选择preferences 然后输入maven 首先把installations修改为下图
因为一开始是没有3.5.0的这个的 所以我们需要点击Add去配置它:
然后就会出现3.5.0的这个了 然后我们记得勾选上它
我们还要去我们自己下载的maven里面找到conf里面的settings.xml文件把jar包的保存地址改为我们自己定义的:
为了更快速的下载jar包 我们要配置一下阿里巴巴的私服。
下一步修改User Settings 它一开始的默认路径是C盘 我们需要把他修改成D:\Mvn\apache-maven-3.5.0\conf下的
点击它修改成上面那个地址 然后下面会自动修改 如果还需要手动的话就是你弄错了需要重新弄。
然后创建项目去测试:
把catalog改成internal,选择最下面的webAPP1.0。
然后给它名字
建好后 注1:加入servlet api,不然报错
注2:修改Project Facets
web2.3->web2.5 jdk1.5->jdk1.8
我们第一步就是配置maven-compiler-plugin插件
<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.LHJ</groupId>
<artifactId>LHJ_maven</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>LHJ_maven Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.44</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>LHJ_maven</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>
然后修改web.xml由2.3至3.1
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>Archetype Created Web Application</display-name>
</web-app>
然后去测试一下这个项目能不能用:
package com.LHJ.maven;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/mavenTest")
public class MavenServlet extends HttpServlet {
private static final long serialVersionUID = -5557545863135549924L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("Maven 环境搭建完毕");
}
}
结果:
这样就是OK了。