本篇文章为你整理了Maven(maven环境变量配置教程)的详细内容,包含有maven是干什么用 maven环境变量配置教程 maven依赖爆红怎么解决 maven仓库 Maven,希望能帮助你了解 Maven。
使用Maven之前,自行在网络中下载jar包,效率较低。如【谷歌、百度、CSDN....】
使用Maven之后,统一在一个地址下载资源jar包【阿里云镜像服务器等...】
使用Maven之前,将jar复制到项目工程中,jar包添加到项目中,相对浪费存储空间
使用Maven之后,jar包统一存储Maven本地仓库,使用坐标方式将jar包从仓库引入到项目中
使用Maven便于解决jar包冲突及依赖问题
第二章 什么是Maven
Maven字面意:专家、内行
Maven是一款自动化构建工具,专注服务于Java平台的项目构建和依赖管理。
依赖管理:jar之间的依赖关系,jar包管理问题统称为依赖管理
项目构建:项目构建不等同于项目创建
项目构建是一个过程【7步骤组成】,项目创建是瞬间完成的
清理:mvn clean
编译:mvn compile
测试:mvn test
打包:mvn package
安装:mvn install
下载地址:http://maven.apache.org/
Maven底层使用Java语言编写的,所有需要配置JAVA_HOME环境变量及Path
将Maven解压非中文无空格目录下
配置MAVEN_HOME环境变量及Path
输入【cmd】,进入命令行窗口,输入【mvn -v】 ,检查Maven环境是否搭建成功
3.2 Maven基本配置
!-- localRepository
The path to the local repository maven will use to store artifacts.
Default: ${user.home}/.m2/repository
localRepository /path/to/local/repo /localRepository
localRepository E:\SG_220106\LocalRepository /localRepository
!-- mirror
Specifies a repository mirror site to use instead of a given repository. The repository that
this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
mirror
id mirrorId /id
mirrorOf repositoryId /mirrorOf
name Human Readable Name for this Mirror. /name
url http://my.repository.com/repo/path /url
/mirror
mirror
id nexus-aliyun /id
mirrorOf central /mirrorOf
name Nexus aliyun /name
url http://maven.aliyun.com/nexus/content/groups/public /url
/mirror
/mirrors
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
/profiles
POM全称:Project Object Model【项目对象模型】,将项目封装为对象模型,便于使用Maven管理【构建】项目
?xml version="1.0" encoding="UTF-8"?
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 http://maven.apache.org/xsd/maven-4.0.0.xsd"
!-- 设置父工程坐标--
parent
artifactId maven_demo /artifactId
groupId com.atguigu /groupId
version 1.0-SNAPSHOT /version
/parent
modelVersion 4.0.0 /modelVersion
artifactId maven_helloworld /artifactId
dependencies
dependency
groupId junit /groupId
artifactId junit /artifactId
version 4.12 /version
scope test /scope
/dependency
/dependencies
/project
Clean LifeCycle:在进行真正的构建之前进行一些清理工作。
Default LifeCycle:构建的核心部分,编译,测试,打包,安装,部署等等。
Site LifeCycle:生成项目报告,站点,发布站点。
5.4 Maven插件和目标
插件:插件本质是由jar包和配置文件组成
目标:每个插件都能实现多个功能,每个功能就是一个插件目标。
5.5 Maven的仓库【重要】
本地仓库:为当前计算机提供maven服务
远程仓库:为其他计算机也可以提供maven服务
私服:架设在当前局域网环境下,为当前局域网范围内的所有Maven工程服务。
中央仓库:架设在Internet上,为全世界所有Maven工程服务。
中央仓库的镜像:架设在各个大洲,为中央仓库分担流量。减轻中央仓库的压力,同时更快的响应用户请求。
[1]groupId:公司或组织的域名倒序+当前项目名称
[2]artifactId:当前项目的模块名称
[3]version:当前模块的版本
!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --
dependency
groupId javax.servlet /groupId
artifactId javax.servlet-api /artifactId
version 4.0.1 /version
scope provided /scope
/dependency
!-- https://mvnrepository.com/artifact/org.springframework/spring-context --
dependency
groupId org.springframework /groupId
artifactId spring-context /artifactId
version 5.3.17 /version
/dependency
/dependencies
如子工程大部分都共同使用jar包,可以提取父工程中,使用【继承原理】在子工程中使用
父工程打包方式,必须是pom方式
7.2 Maven继承方式一
在父工程中的pom.xml中导入jar包,在子工程中统一使用。【所有子工程强制引入父工程jar包】
优势:只要将子工程聚合到父工程中,就可以实现效果:安装或清除父工程时,子工程会进行同步操作。
注意:Maven会按照依赖顺序自动安装子工程
以上就是Maven(maven环境变量配置教程)的详细内容,想要了解更多 Maven的内容,请持续关注盛行IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。