1. Maven介绍
Maven是项目管理工具
pom.xml中放jar包的坐标
把jar包统一放在jar包仓库中,运行时根据jar包坐标找到jar包
会先找本地仓库,没有再去找中央仓库(公司会有一个远程仓库)
依赖管理
maven工程对jar包的管理过程
一键构建
用maven集成的tomcat 完成编译、测试、运行、打包、安装、部署等一些列操作
不用本地tomcat
命令:mvn toncat:run
2. Maven下载安装
下载:
https://maven.apache.org/download.cgi
配置:settings.xml
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
配置环境变量
新建环境变量:MAVEN_HOME
在Path环境变量中新建:%MAVEN_HOME%\bin
Mac配置环境变量过程:
终端执行:vi /etc/profile 环境变量配置文件,修改完保存退出
验证安装成功:
终端执行 :mvn -v
maven的命令行简单使用:
mvn clean 删除编译信息(target目录)
mvn compile 编译(增加target目录;target/classes)
mvn test 测试(target/test-classes)
mvn package 打包(target/xxx.war;后缀名可以在pom.xml配置文件中设置)
mvn install 安装(把项目打包放到本地仓库)
mvn deploy 发布
每一个构建项目命令,都对应了maven底层一个插件
执行后面的命令时,前面的项目会自动执行一次
3. IDEA创建一个Maven项目
IEDA集成Maven:
-DarchetypeCatalog=internal
使用骨架(模版)创建一个web工程:
- 创建完成:右下角 点击"允许自动导入"
- 手动补齐maven项目目录:
pom.xml中添加jar包的方法
本地有jar包的情况下:
本地没有,就需要去maven中央仓库搜索jar包:https://mvnrepository.com
pom.xml中添加tomcat插件(因为默认是tomcat6,所以自己添加个高版本的)
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8080</port>
<uriEncoding>UTF-8</uriEncoding>
</configuration>
</plugin>
启动项目
例如:使用tomcat7插件启动项目(后面有一个项目的例子)
4. 一个maven web工程的例子
//pom.xml 添加依赖(jsp和servlet)
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope> <!--作用域-->
<!--provided:只在编译时起作用,项目运行时不起作用-->
<!--运行时使用tomcat插件中的jar包-->
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
//servlet----java包下
@WebServlet("/myServlet")
public class MyServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
System.out.println("myServlet...");
//转发---跳转到hello.jsp页面(hello.jsp要在webapp下)
request.getRequestDispatcher("/hello.jsp").forward(request,response);
}
}
//hello.jsp---webapp下
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>hello world</title>
</head>
<body>
maven
</body>
</html>
启动:(m按钮)tomcat7:run
在浏览器输入:上面的访问路径/myServlet
5. 补充:添加自定义插件模版
(这一步,也可以是File-->Settings)
下次再需要写入tomcat7插件的时候,直接写模版名字(tomcat7) 然后回车就可以把内容添加上了