Maven

Maven,第1张

1. 什么是Maven仓库

Maven仓库是一个存放了所有依赖的仓库,这个仓库通过依赖的坐标对其进行管理。

依赖类似于eclipse项目的根目录下的lib子目录下引入的第三方jar文件(jar包),这个就是项目的依赖。Maven不同的是,maven仓库中存储了所有依赖,所有的maven项目从同一个仓库调取依赖。

Maven的所有依赖都是从本地仓库获取的,若本地仓库没有,则从远程仓库中下载依赖到本地仓库,之后再使用本地仓库的依赖。若远程仓库和本地仓库都没有,maven报错。

通过运行maven的install命令构建项目时,并未手工下载任何jar文件,而项目却能成功构建,是因为若本地仓库没有相关依赖,那么maven会从远程仓库中找到相关依赖后下载到本地仓库再使用

修改maven本地仓库的默认位置
1)进入maven安装目录→进入conf文件夹
2)打开settings.xml文件修改
3)找到配置,取消注释后,将其中的路径修改为本地仓库的路径即可

maven自带了一个远程仓库,这个远程仓库是maven的中央仓库,其配置可在Effective POM中查看。
maven还能配置其他远程仓库,举例如下

//pom.xml文件的中加入
<repositories>
	<repository>
		<id>oschina</id>
		<name>oschina repository</name
		<url>http://maven.oschina.net/content/groups/public/</url>
	</repository>
</repositories>
2. maven依赖管理

依赖即是一个项目运行所需要的第三方类库文件,也称为构件。
maven通过坐标来管理依赖。在pom中,maven的依赖是在中设置的。

//maven依赖
<dependency>
	<groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
</dependency>

maven坐标

//这几项可唯一确定一个项目(maven坐标)
//groupId:artifactiId:packaging:version
//com.cwu:emall-seckill:jar:0.0.1-SNAPSHOP
<groupId>com.cwu</groupId>
<artifactId>emall-seckill</artifactId>  
<version>0.0.1-SNAPSHOT</version>  //版本号
<packaging>jar</packaging>  //打包类型

传递性依赖
一个复杂的项目会包含很多依赖,也有可能包含依赖于其它构件的依赖。不必找出所有这些依赖把它们写到pom文件中,只需加上直接依赖的那些库,maven会隐式的把这些库所间接依赖的库也加入到项目中。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/923354.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存