1. maven的下载
点击download,出现以下界面
下载红框的内容
2.maven安装
maven下载后,解压到一个没有空格的路径下面,我就解压在安装软件的目录下面E:\ProgramFile\apache-maven。
bin:存放maven命令
boot:存放maven自身的引导程序
conf:存放相关的配置文件,如setting.xml
lib:存放maven自身所需要的的jar包
maven已经可以使用(jdk必须安装配置)
3 maven配置及maven仓库的概念
3.1配置maven环境变量
在系统变量里面新增,变量名为 MAVEN_HOME, 变量值为解压之后的maven的地址(bin的前一级)我的是 E:\ProgramFile\apache-maven\apache-maven-3.5.2,
然后再Path里面增加%MAVEN_HOME%\bin
3.2 测试是否安装成功
打开cmd命令行窗口,输入mvn -v,出现以下界面,表明安装成功。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z8uBLsvV-1593332390263)(F:/code/picture/测试是否安装成功.png)]
3.3 maven仓库分类
maven的工作需要从仓库下载一些jar包,如下图所示,本地的项目A、项目B等都会通过maven软件从远程仓库(可以理解为互联网上的仓库)下载jar包并存在本地仓库,本地仓库就是本地文
件夹,当第二次需要此 jar 包时则不再从远程仓库下载,因为本地仓库已经存在了,可以将本地仓库理解为缓存,有了本地仓库就不用每次从远程仓库下载了。
-
本地仓库 用来存储从远程仓库或中央仓库下载的插件和jar包,项目使用一些插件或jar包,优先从本地仓库查找,默认本地仓库位置在 u s e r . d i r / . m 2 / r e p o s i t o r y , {user.dir}/.m2/repository, user.dir/.m2/repository,{user.dir}表示windows用户目录。
-
远程仓库 如果本地需要插件或者jar包,本地仓库没有,默认去远程仓库下载。远程仓库可以在互联网内也可以在局域网内。
-
中央仓库 在maven软件中内置一个远程仓库地址http://repo1.maven.org/maven2,它是中央仓库,服务于整个互联网,它是由Maven团队自己维护,里面存储了非常全的jar包,它包含了世界上大部分流行的开源项目构件。
3.4 本地仓库的配置
在网上下载好本地仓库,放在一个没有空格的目录下面,我的是在E:\ResorceFIle\MavenRepository\maven_repository。
然后再maven的安装目录下面,E:\ProgramFile\apache-maven\apache-maven-3.5.2\conf 找到setting.xml,打开编辑,在下图位置添加 E:/ResorceFIle/MavenRepository/maven_repository
3.5 全局setting与用户setting
maven仓库地址、私服等配置信息需要在setting.xml文件中配置,分为全局配置和用户配置。在maven安装目录下的有conf/setting.xml文件,此setting.xml文件用于maven的所有project项目,它作为maven的全局配置。如需要个性配置则需要在用户配置中设置,用户配置的setting.xml文件默认的位置在: u s e r . d i r / . m 2 / s e t t i n g s . x m l 目 录 中 , {user.dir}/.m2/settings.xml 目录中, user.dir/.m2/settings.xml目录中,{user.dir}指windows中的用户目录。maven会先找用户配置,如果找到则以用户配置文件为准,否则使用全局配置文件。
4 maven工程的目录结构
4.1 maven工程的目录结构如下
进入src目录,如下
5 IDEA开发maven项目
5.1 IDEA的maven配置
打开File->Settings 配置maven,依据图片指示,选择本地maven安装目录,指定maven安装目录下conf文件夹中settings配置文件。
5.2 IDEA创建maven的web项目
(1)创建新的项目,选择maven项目
(2)如图
(3)如图
(4)如图
(5)等带加载完成,看左边的目录并不完整,在src下的main目录底下添加java目录,并且右击,选择如下图
5.2 创建一个servlet
5.2.1 在src/java/main下创建一个servlet
报错,要解决问题,就是要将servlet-api-xxx.jar包放进来,作为maven工程应当添加servlet的坐标,从而导入它的jar包
5.2.2 在pom.xml添加坐标
坐标来源方式:从互联网搜索
http://search.maven.org/
http://mvnrepository.com/
5.2.3 依赖范围
5.2.4 设置jdk编译版本
在pom.xml下加入:(我用的是jdk1.8)
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
5.2.5 编写一个servlet
package com.zy.servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.getRequestDispatcher("hello.html").forward(req, resp);
}
}
并且在web.xml配置servlet
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.zy.servlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/maven</url-pattern>
</servlet-mapping>
编写相应的一个hello.html文件。
在pom.xml中添加tomcat7插件
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8080</port>
<path>/</path>
</configuration>
</plugin>
之后,点击右边的maven,出现以下界面,按照顺序执行发布项目
然后成功运行:
ok,结束。
参考
黑马的笔记