目录
- 非Maven项目的缺点
- Maven
- Maven的仓库
- Maven的资源坐标
- Maven的下载安装
- Maven常用配置
- 本地仓库
- 镜像仓库
- 配置JDK
非Maven项目的缺点
- 问题一:
项目中的jar包资源需要自己在网上下载,手动导入,不好管理。 - 问题二:
jar包版本控制麻烦
Maven
-
Maven是一个项目管理工具,主要用于Java项目的构建和管理。它提供了一个项目对象模型(POM),通过一小段描述信息来管理项目的构建、报告和文档。Maven填补了Ant的缺点,并首次支持从网络上下载功能,仍然采用xml作为配置文件格式。
-
Maven的面向项目的方法使得许多Apache Jakarta项目和公司项目采用Maven的比例在持续增长。它提供了一个标准化的软件生命周期模型,涵盖项目的创建、构建、测试、集成和部署。
-
Maven的生命周期模型包括三套相互独立的生命周期:Clean Lifecycle、Default Lifecycle和Site Lifecycle。其中,Default Lifecycle是构建的核心部分,包括编译、测试、打包、部署等步骤。
-
此外,Maven还提供了一组标准集合、一个项目生命周期、一个依赖管理系统和用来运行定义在生命周期阶段中插件目标的逻辑。其中,项目描述文件(POM)是Maven管理项目的依据,而大部分功能都是通过插件完成的。
Maven的仓库
Maven的仓库是用来存储jar包的,一个管理项目构件的地方,统一管理构件,然后提供给不同的项目使用,提高了构件的复用性和效率。
- Maven有三个仓库分别是:本地仓库、中央仓库、远程仓库。
本地仓库是用来存储从远程仓库及中央仓库下载的jar包,自己来维护。项目使用的jar包优先从本地仓库获取。 - 中央仓库是Maven下载jar包时,Maven将首先从本地资源库获得Maven的本地资源库依赖资源,如果没有找到,然后从默认的Maven中央存储库(Central Repository)查找下载。同时Maven中央仓库也提供了一个搜索网站便于搜索。
- 远程仓库是如果本地仓库没有所需要的jar包,默认去远程仓库下载。
Maven的资源坐标
在Maven中,GroupID、ArtifactID和Version是用于唯一标识一个项目或项目的构件(如jar文件)的。它们共同构成了一个坐标(coordinate),用于在Maven仓库中定位和识别特定的项目或构件。
- GroupID:通常用于标识一个组织或公司,它定义了项目所属的命名空间。GroupID通常用于将相关的项目组织在一起。
- ArtifactID:是项目的唯一标识符,它通常与项目的名称相对应。ArtifactID用于在GroupID下唯一标识一个项目或构件。
- Version:用于标识项目的版本。每个项目可以有多个版本,通过Version来区分不同版本的项目或构件。
这三个元素共同构成了Maven的坐标系统,用于在Maven仓库中唯一标识和定位项目或构件。通过这些坐标,Maven可以下载和管理项目的依赖关系,并确保每个项目使用正确的版本。
Maven的下载安装
- 打开Maven官网https://maven.apache.org/index.html
点击Download
- 下载Maven
Maven常用配置
- 打开
F:\apache-maven-3.9.6\conf
(此地址为该包解压的地址)下的settings.xml
文件。
本地仓库
配置本地仓库文件夹地址。
镜像仓库
- 复制镜像仓库
<mirror> <id>central</id> <name>central<name> <url>https://maven.aliyun.com/repository/public</url> <mirrorOf>central</mirrorOf>
</mirror>
- 配置
配置JDK
<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>