一、安装与配置
1.1 安装
IDEA 已经自带了 Maven,位于 IDEA 安装目录下的plugins/maven/lib/maven3
,不需要单独再下载。为了方便,只需要将其bin
目录加入到PATH
环境变量即可。
1.2 删除用户级配置
Maven 默认的用户级配置文件和本地缓存仓库在用户主目录的下.m2
目录下,即~/.m2/settings.xml
和~/.m2/repository
。全局的配置文件在安装目录下的conf
目录下。为了使全局配置生效,有必要删除用户主目录下的.m2
目录。
1.3 配置本地缓存仓库
新建一个目录作为 Maven 的本地缓存仓库,并在settings.xml
的根节点下进行配置,如:
<localRepository>D:/env/repository</localRepository>
1.4 配置阿里云镜像源
在settings.xml
的<mirror>
节点下添加以下内容:
<mirror>
<id>aliyun-maven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun-maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
二、在 IDEA 中使用
2.1 配置
可以直接使用 IDEA 自带的 Maven,因此只需要指定 Maven 的配置文件和本地缓存仓库即可。
2.2 从原型创建 Web 项目
2.3 修改项目
- 创建
src/main/java
、src/main/resources
目录 - 删减
pom.xml
中不必要的配置 - 在
pom.xml
中<dependencies>
节点下添加 Servlet API 的依赖 - 将
src/main/webapp/WEB-INF/web.xml
的描述信息改为3.0
及以上的版本
只有 Servlet 3.0 及以上才支持注解。web.xml
的各版本描述信息可以在 IDEA 的模板中找到,如下图位置:
也可以在项目结构中进行重新配置web.xml
和webapp
的路径(移除 > 应用 > 重新添加):
2.4 配置 Tomcat
2.5 CLASSPATH
默认情况下,Maven 项目中src/main/java
目录下的 JAVA 源文件和src/main/resources
目录下的资源文件会被编译到 CLASSPATH。但如果要编译src/main/java
目录下的资源文件(如 XML)到 CLASSPATH,还需要在pom.xml
的<build>
节点下的<resources>
节点下做相应的配置:
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
三、常用命令
mvn clean | 清除target 目录 |
mvn compile | 编译 |
mvn package | 打包 |
mvn install | 安装到本地缓存仓库 |
四、自定义原型
4.1 说明
我们注意到 Maven 提供的原型并不都是开箱即用的,或多或少都还需要做一些配置和调整,因此自定义原型是非常有必要的。
原型插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-archetype-plugin</artifactId>
<version>3.0.0</version>
</plugin>
编译空目录的插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<includeEmptyDirs>true</includeEmptyDirs>
</configuration>
</plugin>
4.2 Maven Web 原型示例
https://gitee.com/icefery/maven-archetype-webapp
maven-archetype-webapp # 项目根目录
|--pom.xml
|--src
|--main
|--resources
|--META-INF
|--maven
|--archetype-metadata.xml
|--archetype-resources # 原型根目录
|--pom.xml
|--src
|--main
|--java
|--resources
|--webapp
|--WEB-INF
|--web.xml
4.3 安装与使用原型
在项目根目录执行如下命令,以安装到本地缓存仓库、更新本地缓存仓库的archetype-catalog.xml
:
mvn clean
mvn install
mvn archetype:update-local-catalog
或者在 IDEA 的 Maven 面板快捷执行:
通过命令行从原型创建:
mvn archetype:generate -D interactiveMode=false \
-D archetypeCatalog=local \
-D archetypeGroupId=xyz.icefery.archetypes \
-D archetypeArtifactId=maven-archetype-webapp \
-D archetypeVersion=1.0.0 \
-D groupId=xyz.icefery.demo.mvnweb \
-D artifactId=mvn-web-demo \
-D version=0.0.1-SNAPSHOT \
-D package=xyz.icefery.demo.mvnweb
4.4 在 IDEA 中添加原型
如果要删除 IDEA 中已添加的原型,可以找到类似如下路径的配置文件并删除其中对应的节点:
C:\Users\icefery\AppData\Local\JetBrains\IntelliJIdea2020.2\Maven\Indices\UserArchetypes.xml