一、Maven简单介绍
Apache Maven是个项目管理和自动构建工具,基于项目对象模型(POM)的概念。
作用:完成项目的相关操作,如:编译,构建,单元测试,安装,网站生成和基于Maven部署项目
二、什么是自动构建工具?
*.java->*.class->run
方式一
javac HelloWorld.java
java HelloWorld
方式二
开发工具Eclipse
常用的自动构建工具
ant
maven
Gradle android项目管理和构建已使用
三、Maven安装与配置
1.下载maven安装包,解压即可使用(3.6.0)
http://maven.apache.org/download.cgi
2.配置maven环境变量
2.1 MAVEN_HOME
2.2 M2_HOME 
2.3修改path添加maven相关路径
2.4 配置方式跟jdk有些类似,环境变量MAVEN_HOME和M2_HOME的值为maven的根目录 然后在PATH环境变量里加入“%MAVEN_HOME%\bin;%M2_HOME%\bin;”即可
3.验证doc窗口执行命令“mvn –version”
4. 修改“MAVEN_HOME\conf”下的setting.xml文件,配置本地仓库。注意是:“E:/”而非“E:\”
4.1
仓库的分类
中央仓库(默认是国外的源,换成国内的阿里巴巴的源,速度更快) https://mvnrepository.com/
公司仓库(也叫私人仓库或私服)
本地仓库
中央仓库(http://search.maven.org/,但一般使用另外一个网站:http://www.mvnrepository.com/)
公司仓库
本地仓库
公司里面还会有一个大仓库(本地)全公司使用
本地仓库程序员自己使用,私服全公司使用,中央仓库所有人用
四、Eclipse下配置Maven
注:eclipse中的maven配置与eclipse的工作空间有关!
第一步: Preferences==》Maven==》installations==》Add...
在这里配置Maven的安装路径并添加
添加之后再选中
第二步:
Preferences==》Maven==》User Settings
在User Settings手动选择Maven的conf\settings.xml文件
创建Maven项目
1、Maven project
2、maven-archetype-quickstart
右键New==》Other==》搜索Maven==》选中Maven project
==》Next==》Next
在Catalog中切换成Internal,下面默认maven-archetype-quickstart就是java工程
而我们这里是创建动态的web工程
切换成maven-archetype-webapp
第一栏:组织机构Id
第二栏:项目名
完成之后会缺乏Servlet包
解决方法:
打开pom.xml
1、配置web3.0和Junit、Servelt包 (整个pom.xml文件如下)
<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.zking</groupId>
<artifactId>maven01</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>maven01 Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13</version>
<scope>test</scope>
</dependency>
<!-- Servlet -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>maven01</finalName>
<plugins>
<!--第一步就是配置maven-compiler-plugin插件-->
<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>
2、右键项目==》Project Facets==》
Dynamic Web Module 改为3.0并取消选中
java改为1.8然后保存关闭
然后再打开一次 把Dynamic Web Module选中
点击下面Further configuration available ,并改成如下图所示
再改web.xml文件,配置web3.0
web.xml文件 改成如图所示
<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_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>Archetype Created Web Application</display-name>
</web-app>
右键项目==》Run As==》Maven test 测试 Maven install 测试下载依赖 Maven clean清空
右键项目==》Maven==》Update Project==》选中项目更新依赖==》OK
右键项目==》Build Path==》Configure Build Path==》Source==》
把选择对勾取消选中
这个src/main/java就是存放源代码
src/test/java:测试 仅在研发测试使用,在编译发布的时候不会带到发布包里
src/test/resources:存放项目配置文件
到此只需要配置Tomcat添加项目发布即可
IntelliJ IDEA下创建Maven项目
1、Maven project Java项目
创建一个动态Web项目
2、maven-archetype-quickstart
Create New Project
Name:项目名
Location 项目地址
Groupld:组织机构ID
第一个:Maven的安装路径
第二个:settings.xml文件路径
第三个:本地创库路径
再下面加入
archetypeCatalog
internal 加快本地项目的加载速度
在这里本人出了一个错误导致我无法导入Maven项目
我之后是删除了项目中的.idea文件夹,同时更改了JDk
但是我更改了之后再创建了一个Maven项目又出现了此问题,我便将Maven版本降低到了3.6.3,2019版的idea可能不兼容最新版的Maven版本,你可以升idea或者maven,降低版本也可以
再把Maven导入项目即可!
IDEA中的Maven的核心配置文件pom.xml
里面配置了servlet和junit还有maven-compiler-plugin插件
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>maven01</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>maven01 Maven Webapp</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<!--junit-->
<junit.version>4.13</junit.version>
<!--Servlet-->
<servlet.version>4.0.1</servlet.version>
</properties>
<dependencies>
<!-- junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!-- servlet -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${servlet.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>maven01</finalName>
<plugins>
<!--第一步就是配置maven-compiler-plugin插件-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
web.xml文件配置web3.0
<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_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>Archetype Created Web Application</display-name>
</web-app>
IDEA配置Tomcat
点Add Configuration
然后在打开Templates找到Tomcat配置
在这把项目添加到Tomcat(注:Application context项目名可以更改)
最后配置完成就可以启动项目了!