Maven

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Maven相关的知识,希望对你有一定的参考价值。

1.Maven是纯Java编写的开源项目管理工具,采用一种POM的方式来管理项目

POM:工程对象模型,即把工程当作对象来处理
所有的项目配置信息都定义的pom.xml文件中,通过该文件Maven管理项目的整个生命周期

2.maven特点:

依赖管理:通过pom.xml配置文件将各个分散的项目自动的关联起来

项目自动构建

3.Maven下的目录

src/main/java 项目的源代码所在的目录

src/main/resources 项目的资源文件所在的目录

src/main/filters 项目的资源过滤文件所在的目录

src/main/webapp 如果是web项目,则该目录是web应用源代码所在的目录,比如html文件和web.xml等都在该目录下。

src/test/java 测试代码所在的目录

src/test/resources 测试相关的资源文件所在的目录

src/test/filters 测试相关的资源过滤文件所在的目录

target 输出目录,所有的输出都存放在这个目录下

4.pom.xml文件

groupId:项目组的编号,在组织中或者项目中是唯一的

artifactId:项目的名称

version:项目的版本

groupId-artifacted-version:唯一确定一个项目

packaging:打包的方式

modules:多模块的工程描述

dependencies:依赖的jar集合

plugins:项目中引用的插件

build:构建时的设置

resources:项目中资源文件的位置

profiles:设置管理,管理项目引用不同的环境设置

distributionManagement:告诉别的项目如何抓取本项目

5.插件的作用:

archetype:项目的骨架

clean:清理生成的target文件

validate:由maven核心负责,验证maven文件是否有效

compile:编译Java源码

test:运行测试代码

package:项目打包

install:将软件包安装到本地仓库

site:生成项目站点

deploy:将软件包部署在远程仓库

6.settings.xml文件

作用:设置maven参数的配置文件

pom.xml文件是所在项目的局部配置

全局配置:${ M2_HOME}/conf/settings.xml

用户配置:user/.m2/settings.xml

优先级:pom.xml > user.settings.xml > global.settings.xml

settings文件各个标签:

servers:配置一些仓库的下载和部署的用户名密码

profils:根据环境参数来调整构建配置的列表

repositories:远程仓库列表

pluginsRepositories:发现插件的远程仓库列表

pluginGroups:当插件的组织Id没有显示提供时,共搜寻插件组织Id的列表

mirrors:为仓库列表配置的下载镜像列表

以上是关于Maven的主要内容,如果未能解决你的问题,请参考以下文章

Mavenmaven简介

mavenmaven jar 包 冲突 的解决方式

Maven实战之初识MavenMaven的简单介绍

MavenMaven四大特性

mavenmaven pom文件详解

mavenmaven各种奇葩问题