初识Maven,不负遇见

Maven笔记

看一个项目要先看maven的结构

1.maven的坐标格式如下:

<groupId>commons-beanutils</groupId>
 <artifactId>commons-beanutils</artifactId>
 <version>1.8.3</version>

2.父的pom.xml中可以配置管理其他模块,子模块会继承父pom.xml中的依赖(在子模块中进行如下配置)

<!-- 父级项目坐标 (默认从本地查找,未找到再到远程构件仓库查找)-->
<parent>
    <groupId>cn.com.servyou</groupId>
    <artifactId>Framework</artifactId>
    <version>1.0-SNAPSHOT</version>
    <relativePath>../pom.xml</relativePath> //父pom.xml相对路径
</parent>

父的pom.xml文件中如下配置,指定打包方式 如果指定的是pom的话就会直接扫描所有子结构在的pom.xml,在做相应的打包操作(默认是打成jar,可以写war)

<packaging>pom</packaging>

dependency与denpendencyManagement

dependencyManagement
版本仲裁 统一多模块的依赖版本(在父模块中写了版本的话,在子模块中可以不用再写了,这样可以避免版本子模块使用的把版本不一样),但是子模块中的pom.xml中指定了版本就按子模块的版本找。

dependency
直接依赖(建议使用) 可以解耦

distributionManagement标签

此标签管理需要上传jar到仓库,或则从仓库上下载jar

<distributionManagement>
    <!-- release仓库 -->
    <repository>
        <id>xqy-releases</id>
        <name>Nexus Release Repository</name>
        <url>http://192.168.60.102:8081/nexus/content/repositories/xqy/</url>
    </repository>
    <!-- snapshot版本尾缀为-SNAPSHOT的组件会从该地址上传或下载 -->
    <snapshotRepository>
        <id>xqy-snapshots</id>
        <name>Nexus Snapshot Repository</name>
        <url>http://192.168.60.102:8081/nexus/content/repositories/xiaoyiqe-test/</url>
    </snapshotRepository>
</distributionManagement>

本地仓库、远程仓库、第三方仓库(企业仓库)

在maven项目中使用了的jar包等,会先从本地仓库找,本地仓库没有的话,就会去远程仓库下载
使用第三方仓库的好处:可以避免重从远程仓库上去下载(避免了下载了病毒),如果有第三方仓库,在仓库中没有相应的jar的话,那么会去从远程仓库上去下载,下载放到本地,在从本地去拿

打包

如果有父pom.xml文件的话,在根目录下打包的话会打包父pom.xml所管理的模块,如果想单个打包的话如图
这里写图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42865976/article/details/82559811