18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

53.Maven

1. Maven介绍

1)apache下的一个开源项目,是纯java开发,并只用来管理java项目。

2)maven也含有索引提高查询速度。

3)maven项目的一键构造,依赖管理,

4)maven能做什么:

  编译、测试、运行、打包、部署。

5)拓展:工程打成war包扔到webapps下就能运行。

6)Maven的分模块开发。

2. Maven简介

1)整个maven只需要关注conf文件夹下的settings.xml

2)Ctrl+c在命令行是终止程序的意思。

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

3)compiler 编译

3. Cmd快速切换路径

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

4. maven去本地仓库寻找所需要的jar包。

1)找到setting.xmlcopy被注掉的地址写成自己的仓库地址

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

2)如果本地仓库没有所需要的jar包,那么可以去私服(远程仓库)

   上下载,如果私服没有,那么便去中央仓库下载。如果没搭建私

   服,直接去网络下载。

5. maven项目介绍

1)这是maven项目的核心文件

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

2)maven工程的目录结构

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

3)为什么配置文件在maven里面放到了resource目录下?

   以前还是现在配置文件都放到了classes下,所以无影响。

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

6. maven命令的生命周期

1)Clean 清理已经编译的工程目录  

2compile 编译了主目录的文件

3Test  编译并运行了test目录的代码

4Package 打包成war

5Install 就是把项目发布到本地仓库|对应各war/jar

6) 命令的执行顺序:compile>test>package>install

   执行后面的指令,会把前面的执行了,执行前面的指令,不会执

   行后面的。

在执行maven命令的时候需要进入项目的目录里面。

7)maven的生命周期有三种。需要记住default的那几个命令即可。

8)Deploy是发布到私服上。

9)不同生命周期的指令可以同时执行。

7. M2e插件

Eclipse已经集成了此maven

1)选择配置高版本maven

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

2)修改默认的本地仓库集

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

8. 创建maven项目

1)创建maven项目选择跳过骨架(不跳过会缺少resource文件夹)

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

2)group id+artifact id+Version叫做坐标

   18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

3)需要再创建web.xml文件

   在webapp下创建大写的WEB-INF文件夹再创建web.xml文件。

4)处理编译版本

pom.xml中添加如下代码

 

<build>

<!-- 配置了很多插件 -->

<plugins>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<version>3.5.1</version>  

<configuration>

<source>1.7</source>

<target>1.7</target>

<encoding>UTF-8</encoding>

</configuration>

</plugin>

</plugins>

</build>

5修改web.xml

删除重复的代码

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

6) 添加jar

   在pom中添加如下代码:

 

<dependencies>

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>4.9</version>

<scope>test</scope>

</dependency>

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>servlet-api</artifactId>

<version>2.5</version>

<scope>provided</scope>

</dependency>

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>jsp-api</artifactId>

<version>2.0</version>

<scope>provided</scope>

</dependency>

</dependencies>

7) Maven build...

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

9. 配置maven环境变量

1、 最终要运行的是maven软件中bin目录的mvn命令

   所以要配置maven的环境变量

   在系统变量添加

   环境变量的名称:MAVEN_HOME

变量值:就是maven软甲解压的目录F:\class32\apache-maven-3.3.9

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

3、把MAVEN_HOME添加到path

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

 

10. 依赖管理

1)创建索引

   18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

2)导入struts2jar

   搜索依赖:struts2-core

   注意依赖范围:scope

      18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

    Compile struts2-core:全需要

Provided jsp-api.jsr:编译时(compile)需要,测试时需要,运行时不需要(打包

时不需要)。

Testjunit:编译时不需要,测试时需要,运行时不需要

Runtime:数据库驱动包:编译时不需要,测试时需要,运行时不需要,打包时需要。

 18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天

3)可以配置插件-jar

18.02.05,web学习第五十三天,还有半年,努力吧青年 maven第一天