1、 什么是maven
Maven是基于项目对象模型(POM即Project Object Model),可以通过一小段描述信息(XML)来管理项目的构建,报告和文档的软件项目管理工具。
POM:POM(project object model)是Maven对一个单一项目的描述。没有POM的话,Maven是毫无用处的——POM是Maven的核心。是POM实现的并驱动了这种以模型来描述的构建方式。
作用:管理项目的构建,报告和文档的软件项目管理工具。
我的理解:使项目结构固定化、可以通过xml文件导入jar包。
2、安装与配置maven(3.5.0)
前提:已安装JDK(本文jdk1.8)
下载maven:http://maven.apache.org/release-notes-all.html(对于windows,选择bin.zip即可)
解压到D盘,从而maven文件夹的路径为D:\apache-maven-3.5.0
配置环境变量,并在path后面加入 %MAVEN_HOME%\bin;
MAVEN_HOME D:\maven\apache-maven-3.2.3
MAVEN_OPTS = -Xms128m -Xmx512m(可选)
win+r—cmd—输入mvn -v 查看安装是否成功
本地仓库:maven在配置依赖jar包时,先从本地仓库找,如果没有则从中央仓库找,并自动备份到本地仓库。
修改本地仓库路径:打开D:\maven\apache-maven-3.2.3\conf\settings.xml,在被注释的标签localRepository下加入以下内容,并在D盘创建此文件夹。 通过执行在cmd中执行mvn help:system,查看仓库文件夹是否生效。
<localRepository>D:\maven\repository</localRepository>
- 修改maven默认JDK为jdk1.8 :打开settings.xml,在被注释的profiles标签中加入以下内容:
<profiles>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
3、eclipse集成maven
由于最新的eclipse luna版本已经集成maven插件,因此直接配置即可,老一点的版本需要下载maven的eclipse插件。
Windows–Preferences–Maven–Installations,add Maven的路径。
Windows–Preferences–Maven–UserSettings,修改Global Settings和User Settings的路径为:
D:\apache-maven-3.5.0\conf\settings.xml
4、创建maven项目
File->New->other->Maven->next->请选中Create a simple project–next->填写Group Id和Artifact Id
–>packaging选jar则创建java项目、选war创建java web项目。右键项目->properties->查看java build path中library的jre和java compiler的jre版本是否一样,如果是web项目,还要看Project Facets中的java版本和前两者是否一样。
5、看看maven目录结构
- java项目:
src/main/java //java类
src/main/resource //配置文件等一些资源文件
src/test/java //测试的java类
stc/test/resource //测试的资源文件
src //
target //
pom.xml //项目配置文件
6、引入jar包
maven对于开发者,一大作用就是引入jar包的便捷性。
- 不配置settings.xml的话,默认的jar包下载地址为:https://mvnrepository.com/,进入后搜索要下的jar包,复制dependency配置到pom.xml的dependencies标签中,比如:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.40</version>
</dependency>
保存了pom.xml后,可以在Maven dependencies中看到已经自动下载好的jar包,再也不用手动找jar包了,然后在复制,引入了!很方便!
7、修改maven仓库镜像(aliyun)
很多人说阿里云的maven仓库下载速度比官网快很多,我们改一下仓库吧:
打开D:\maven\apache-maven-3.2.3\conf\settings.xml,在mirrors标签中写入:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
然后访问http://maven.aliyun.com,直接搜包名,复制dependency到pom.xml吧!
8、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/xsd/maven-4.0.0.xsd">
//项目基本配置:
<modelVersion>4.0.0</modelVersion> //POM模型的版本
<groupId>com.leetech</groupId> //项目或者组织的唯一标志,配置时生成路径也是由此生成
<artifactId>mavenJavaProject</artifactId> //项目的通用名称
<version>0.0.1-SNAPSHOT</version> //项目的版本
<packaging>jar</packaging> //打包机制
<!-- 其中groupId,artifactId,version可以组成项目的唯一坐标,name和url可选。-->
//常量配置:
<properties>
<spring.version>3.2.8.RELEASE</spring.version>
</properties>
使用方式 如下 :
${spring.version}
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
//依赖关系:
<dependencies>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.40</version>
</dependency>
</dependencies>
</project>
<!--
此外,还可以配置开发者信息、组织信息、Licenses、plugins、build设置(target路径等)、resources(资源的位置)、仓库、插件、分发管理等,当然我还不是太懂后面的这些。
-->