Maven解析

目录

Maven的概念

Pom

项目坐标

仓库

Maven环境搭建

安装jdk

配置maven

配置本地仓库地址

[配置阿里云 maven 镜像仓库,下载速度更快](#配置阿里云 maven 镜像仓库,下载速度更快)

在idea中配置maven

​编辑

pom中名词解释

Maven命令


Maven的概念

Maven 是 Apache 软件基金会的一个开源项目,是一个优秀的项目构建工具,它 用来帮助开发者管理项目中的 jar,以及 jar 之间的依赖关系、完成项目的编译、 测试、打包和发布等工作。

Pom

Project Object Model 项目对象模型:根目录下都会有一个xml文件,指示maven怎样工作在 pom.xml 文件中配置项目基本信息以及项目构建信息等。比如:项目坐标、 项目依赖的 jar、插件、编译选项等。

项目坐标

jar包在仓库中的位置

坐标由4个部分构成: groupId(组id)、artifactId(项目名)、packaging(jar,war)、version(版本)

仓库

中央仓库全球共享,先将 jar 从中央仓库下载到本地仓库,然后在项目中引用本地仓库的 jar,在自己的项目使用时,首先会从本地仓库查找,本地仓库如果没有,会从中央仓库或者镜像仓库下载

Maven环境搭建

安装jdk

Maven Repository: Search/Browse/Explore (mvnrepository.com)

配置maven

后在系统环境 中配置环境变量,在path中配置到bin目录,配置成功后输入命令mvn -version 查看版本如下图

配置本地仓库地址

需要在 maven 的服务器解压的文件中找到 conf 文件夹下的 settings.xml 文件进行修改,如下图所示

配置阿里云 maven 镜像仓库,下载速度更快

再mirrors中添加

XML 复制代码
<mirror>
		<id>alimaven</id>
		<name>aliyun maven</name>
		<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
		<mirrorOf>central</mirrorOf>
</mirror>

在idea中配置maven

pom中名词解释

<groupid><artifactId><version>:依赖项的坐标

<type>:依赖项的 packaging 类型,默认是 jar

<scope>:依赖项的作用范围,默认是 compile。各个取值及含义如下

compile:编译时和运行时依赖。如果你的项目最终打包为 war 包,则该依赖 包会被拷贝到 war 包中的 lib 目录中。

provided:编译项目主代码和测试代码时使用此依赖项,运行时由 jre 或 web 容器提供。如果你的项目最终打包为 war 包,则该 jar 包不会被打包。

Maven命令

compile 编译命令

clean 删除之前编译的内容

package 打包 将项目打包成一个jar包或者war包

install 把项目 install 到本地仓库文件上传都是一个个组件,写好后,应该安装到(发布到)仓库中去,

这样在其他的项目中就可以使用了

相关推荐
weixin_4723394612 分钟前
Maven 下载安装与配置教程
java·maven
Magnum Lehar1 小时前
3d游戏引擎EngineTest的系统实现3
java·开发语言·游戏引擎
就叫飞六吧1 小时前
Spring Security 集成指南:避免 CORS 跨域问题
java·后端·spring
Mcworld8571 小时前
java集合
java·开发语言·windows
天黑请闭眼1 小时前
IDEA:程序编译报错:java: Compilation failed: internal java compiler error
java·intellij-idea
苍煜2 小时前
Maven构建流程详解:如何正确管理微服务间的依赖关系-当依赖的模块更新后,我应该如何重新构建主项目
java·微服务·maven
冼紫菜3 小时前
[特殊字符]CentOS 7.6 安装 JDK 11(适配国内服务器环境)
java·linux·服务器·后端·centos
isyangli_blog3 小时前
(1-4)Java Object类、Final、注解、设计模式、抽象类、接口、内部类
java·开发语言
秋野酱4 小时前
Spring Boot 项目的计算机专业论文参考文献
java·spring boot·后端
士别三日&&当刮目相看4 小时前
数据结构*优先级队列(堆)
java·数据结构