¶一、安装和配置
1.安装
前提条件:已经安装好适配maven
具体版本的jdk
环境,本教程使用的是jdk8(Maven 3.3+ require JDK 1.7 or above)
下载Apache Maven,访问 Maven官方网站;下载 Maven 的 zip 文件,例如: apache-maven-3.6.0-bin.zip,将它解压到你要安装 Maven 的文件夹。比如:D:\DevelopmentTools\apache-maven-3.6.0
2.配置
添加环境变量
1 | MAVEN_HOME:D:\DevelopmentTools\apache-maven-3.6.0 |
3.安装验证
1 | mvn –version |
4.优化配置
编辑maven\conf\settings.xml
,如: D:\DevelopmentTools\apache-maven-3.6.0\conf\settings.xml
。
只做一下修改,其他地方不要动
1 | <!-- 1.设置本地仓库 |
¶二、创建简单maven项目
创建一个目录设为mavendemo
,在里面添加一下内容,除了pom.xml
,都是文件夹。必须要这样创建项目,maven
才能识别。
1 | . |
创建两个java文件。src/main/java/com/qcmoke/Helloworld.java
和src/test/java/com/qcmoke/HelloTest.java
1 | . |
Helloworld.java
1 | package com.qcmoke; |
HelloTest.java
1 | package com.qcmoke; |
pom.xml
1 | <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
1 | mvn compile #编译源代码 |
mvn常用命令:
1 | mvn compile #编译源代码 |
¶三、Eclipse创建maven项目
给Eclipse配置maven
找到Window-->Preferences-->Maven-->Installations-->add-->External-->Directory
,将D:\DevelopmentTools\apache-maven-3.6.0
添加到Eclipse中,然后Apply and Close
找到Window-->Preferences-->Maven-->User Setting
,将Global Settings和User Settings的路径都修改为D:\DevelopmentTools\apache-maven-3.6.0\conf\settings.xml
创建项目
New-->Other-->Mavven Project
选中Create project sinple name and location
,然后Next,填写下图内容后Finish即可创建完成。
创建包名和java文件
Helloworld.java
1 | package com.qcmoke; |
HelloTest.java
1 | package com.qcmoke; |
pom.xml
1 | <project xmlns="http://maven.apache.org/POM/4.0.0" |
右键项目Run As 选择Maven Build…后,在Goals中输入compile
后点击Run开始编译
创建web工程
创建项目
New-->Other-->Mavven Project
选中Create project sinple name and location
,然后Next,填写下图内容后Finish即可创建完成。注意打包方式要选择war
生成webapp相关文件。右键项目,选择properties>Project Facets
,先取消Dynamic Web Module
勾选后点击Apply,然后再勾选,会多出来Further configuration available...
的链接,点击这个链接,会看到下图的弹框。在Content directory输入框里的内容改为src/main/webapp
修改好后,点击Ok,在点击Apply and Close即可创建webapp相关文件
pom.xml
1 | <project xmlns="http://maven.apache.org/POM/4.0.0" |
¶四、依赖范围
compile范围:
- 对主程序有效
- 对测试程序有效
- 参与打包
- 参与部署
test范围:
- 对主程序无效
- 对测试程序有效
- 不参与打包
- 参与部署
provided范围:
- 对主程序有效
- 对测试程序有效
- 不参与打包
- 不参与部署