Maven项目管理
介绍Maven的核心特性
Maven介绍
- Maven 是项目管理工具,对软件项目提供构建和依赖管理
- Maven是Apache下的Java开源工具
- Maven是为Java项目提供了统一的管理方式,已成为业界标准。
Maven的核心特性
- Maven设置遵循统一的规则,保证不同开发环境的兼容性
- 强大的依赖管理,项目依赖组件自动下载,自动更新
- 可扩展的插件机制,使用简单,功能丰富
Maven安装
- 首先准备好JDK环境
- 在官网下载Maven
- 系统变量配置:path添加maven的bin文件夹目录
- 命令行窗口输入 mvn -v 查看maven版本,如果可以查看则成功。
Maven的坐标
- GroupId:机构或者团体的英文,采用“逆向域名”的形式书写
- ArtifactId:项目名称,说明其用途,例如:cms、oa…
- Version:版本号,一般采用"版本 + 单词 "形式,例如:1.0.0.RELEASE
Maven项目标准结构
Maven依赖管理
- Maven利用dependency(依赖)自动下载,管理第三方jar
- 在pom.xml文件中配置项目依赖的第三方组件
- maven自动将依赖从远程仓库下载到本地仓库,并在工程中引用
- 标准依赖配置:(只需要加一个dependencies根标签,然后在其下面加入dependency,引入所需jar包的groupid,artifactid,version即可)
Maven的依赖管理
本地仓库与中央仓库
首先,工程中使用了maven,maven会在项目启动时加载pom.xml,分析有那些依赖,然后去本地仓库查看是否存在这些依赖,如果不存在,则会去中央仓库下载这些文件,然后maven去加载这些文件,所以就可以看到这些文件了
Maven的打包方式
项目打包
- Maven可以将Java项目打包为jar包、war包
- Maven项目打包是通过Plugins技术实现的
- Maven输出jar包插件:maven-assembly-plugin
assembly(装配)
操作步骤: - pom.xml添加:
<build>
<plugins>
<!-- 配置插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.5</version>
<!-- 指定main方法 -->
<configuration>
<archive>
<manifest>
<mainClass>sample.ConnectionSample</mainClass>
</manifest>
</archive>
<!-- 额外参数 -->
<descriptorRefs>
<!-- all in one ,在打包时会将所有引用的jar包合并到输出的jar文件中 -->
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
- 运行配置添加:
Maven构建Web工程并打包
首先构建maven标准项目,接着建立web对应的文件夹
打包配置:
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.imooc</groupId>
<artifactId>maven</artifactId>
<version>1.0.0.RELEASE</version>
<!-- packing 代表输出格式,不给默认是jar web使用jar-->
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
</dependencies>
<build>
<!-- 这里配置项目运行后的上下文文根-->
<finalName>maven-web</finalName>
<plugins>
<!-- 这个是web打包的插件-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
</plugin>
</plugins>
</build>
</project>
Maven常用命令
修改本地仓库地址
maven下的conf下的settings.xml文件:
localRepository 这个是配置本地仓库默认地址的;
在IDEA中配置使用maven
手动建立maven项目,比较简单,就不赘述了