Maven学习笔记二

POM

Project Object Model:项目的属性、依赖、构建配置这些信息都被抽象到项目对象(POM)里面。
POM组成
-项目基本信息:groupId:artifactiId:packaging:version
-构建环境
-POM关系
-构建设置

插件与目标

使用命令:pluginId:goalId,例如mvn archetypr:generate
常用插件
maven-archetype-plugins
maven-dependency-plugin
maven-help-plugin
maven-resources-plugin
maven-surefire-plugin:执行单元测试
jetty-maven-plugin:
maven-enforcer-plugin

项目的生命周期阶段

maven中项目的生命周期是指项目的构建过程,它包含了一系列的有序的阶段,而一个阶段就是构建过程中的一个步骤。
插件目标可以绑定到生命周期阶段上,一个生命周期阶段可以绑定多个插件目标。

依赖管理

依赖范围scope
compile(编译范围)
provided(已提供范围)
runtime(运行时范围)
test(测试范围)
system(系统范围)

仓库依赖

存放所有依赖的仓库,通过依赖目标的坐标进行管理

maven仓库

在Maven中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件
Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库。(仓库就是存放依赖和插件的地方),任何的构件都有唯一的坐标,Maven根据这个坐标定义了构件在仓库中的唯一存储路径。

分类:可分为本地仓库远程仓库,其中远程仓库又可分为中央仓库、私服、其他公共库.

-本地仓库

在本地安装Maven后,在安装目录下settings.xml中配置本地仓库地址

<settings>  
    <localRepository>D:\maven_new_repository</localRepository>  
</settings>  

-远程仓库
-中央仓库

中央仓库是默认的远程仓库,maven在安装的时候,自带的就是中央仓库的配置。中央仓库在超级POM中配置,所有的maven项目都会继承超级POM

<repository>
<id>central</id>
<name>Central Repository</name>
<url>http://repo.maven.apache.org/maven2</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>

-私服

私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,供局域网内的Maven用户使用。当Maven需要下载构件的时候,它从私服请求,如果私服上不存在该构件,则从外部的远程仓库下载,缓存在私服上之后,再为Maven的下载请求提供服务。我们还可以把一些无法从外部仓库下载到的构件上传到私服上。
当前主流的maven私服:
1.Apache的Archiva
2.JFrog的Artifactory
3.Sonatype的Nexus

远程仓库的配置

在pom.xml文件中< repositories>< / repositories>中可以配置多个远程仓库,有时我们要对远程仓库的访问进行认证,一般将认证信息配置在settings.xml中,做如下配置,其中< id>< /id>必须与POM中需要认证的的repository元素的Id一致。
<servers>
<server>
<id>same with repository id in pom</id>
<username>username</username>
<password>pwd</password>
</server>
</servers>

如何将生成的项目部署到远程仓库

完成这项工作,也需要在POM中进行配置,这里有新引入了一个元素:< distributionManagement>
distributionManagement包含了2个子元素:repository和snapshotRepository, 前者表示发布版本构件的仓库,后者表示快照版本的仓库
这两个元素都需要配置 id(该远程仓库的唯一标识),name,url(表示该仓库的地址)
向远程仓库中部署构件,需要进行认证。配置如下:

<servers>
<server>
<id>same with repository id in pom</id>
<username>username</username>
<password>pwd</password>
</server>
</servers>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值