Maven使用及Nexus私服的搭建

2019-05-21  本文已影响0人  已迁至知乎_此不再维护

菜鸟Maven

Maven主要帮助开发者完成依赖、构建、发布等工作,声名文件是项目或各模块内的pom.xml。

Maven安装

  1. 下载并解压
  2. 配置环境变量
  3. 配置远程仓库镜像及本地仓库目录:${M2_HOME}/conf/settings.xml

生命周期

Maven有三个标准的生命周期:

不同的生命周期又抽象出了各阶段(phase):每个阶段都成为了一个扩展点,可以采用不同的方式来实现,提高了扩展性与灵活性;同时规范了Maven的执行路径。

Maven插件

生命周期中各阶段(phase)的实际操作由Maven插件执行,Maven的核心部分代码量很少,大部分实现都是由插件来完成。

在pom.xml中,可以设置指定插件目标(goal)与阶段(phase)绑定,当项目构建到给定阶段时,就会触发绑定插件的goal的执行,如官网演示的插件执行器

另外,插件也可以通过mvn plugin-name:goal直接运行。

插件与生命周期的关系是:

如何自定义Maven插件参见这里

Maven项目结构

即约定大于配置:

----(${basedir})
    |
    pom.xml
    |
    /src/main/java/
    /src/main/resources/
    /src/main/webapp/WEB-INF/
    /src/test/java/
    /src/test/resources/
    /target/classes/
    /target/test-test-classes/
    

常用命令

依赖

聚合

指将多个模块整合在一起,统一构建。需要一个父工程,使用<modules>配置其中对应的子工程的相对路径。

继承

子工程通过<parent>继承父工程,则可以继承其:

上面的三个配置子工程够可以重写,重写之后以子工程为准。

Maven仓库

Maven仓库分为:

Maven项目中可以修改仓库位置共有一下几处:

若所有配置都存在,依赖的搜索顺序就会变得异常复杂,详见这里介绍。结论如下:

Maven Profiles

Maven构建配置文件用于修改构建过程,可以被多种方式激活。

settings.xml中提供的配置文件旨在提供本地计算机特定的路径和存储库位置,以允许构建在本地环境中工作。对于settings.xml中定义的配置文件,您只能指定仓库位置,插件仓库位置和自由格式属性,以用作POM中插件的配置变量。

pom.xml中也可以指定profiles和activeProfiles来进行差异化构建。

Nexus私服的搭建

私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件,参见这里

下载

下载地址点我,一种是包含jetty容器的bundle包,另一种是不包含容器的war包,按需下载即可。

安装

仓库说明

指向私服

若指向私服后,依赖无法找到,可能是因为这个原因

发布项目至私服

详情参见这里

上一篇下一篇

猜你喜欢

热点阅读