• maven详解之 pom.xml 解释


    <project>:pom.xml的根标签,一个maven项目用一对<peoject></project>标签包裹。

    <modelVersion>4.0.0</modelVersion>


    <parent> <!-- 被继承的父项目的构件标识符 -->
    <groupId>com.qjsoft.laser.controller</groupId><!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成 企业网址反写+项目名 -->
    <artifactId>qjsoft-laser-controller</artifactId><!--本项目的唯一ID,一个groupId下面可能多个项目,就是靠artifactId来区分的 项目名-模块名-->
    <version>0.0.1-SNAPSHOT</version> <!-- 本项目目前所处的版本号 版本号+类型 -->
    <!--版本号由三个整数表示,每个整数用“.”分隔,表示:大版本号.分支版本号.小版本号
    类型:版本类型。主要有:snapshot快照版本(简化版本)、alpha内测版、beta公测版、release稳定版、GA正式发布版-->
    </parent>

    <groupId>com.qjsoft.laser.controller</groupId> <!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成 企业网址反写+项目名 -->
    <artifactId>qjsoft-laser-controller-apadtation</artifactId> <!--本项目的唯一ID,一个groupId下面可能多个项目,就是靠artifactId来区分的 项目名-模块名-->
    <version>4.0-SNAPSHOT</version> <!-- 本项目目前所处的版本号 -->
    <packaging>pom</packaging> <!-- 打包的机制,如pom,jar, maven-plugin, ejb, war, ear, rar, par,默认为jar -->
    <name>controller</name> <!--当前项目的名称-->

    <!--项目开发者属性-->
    <properties> <!--属性值标签,也叫变量标签。与Ant中的property一样,可以通过这个标签包含一些属性并指定属性值。
    那么在pom.xml的其他地方,可以通过EL表达式访问变量的方法——${属性名} 来获取具体的属性值。
    一般这个用来作为整个pom.xml中需要重复使用的内容或者全局变量使用。-->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><!--文件拷贝时的编码-->
    <yqbsoft-laser-service-suppercore.version>1.4.12</yqbsoft-laser-service-suppercore.version>
    <yqbsoft-laser-service-domain-client.version>1.0.0-SNAPSHOT</yqbsoft-laser-service-domain-client.version>
    </properties>

    <!--依赖管理标签:主要用于制定父pom.xml,其他项目可以继承这个pom.xml,从而避免重复定义某些depency

    父POM使用dependencyManagement能够统一项目范围中依赖的版本,当依赖版本在父POM中声明后,子模块在使用依赖的时候就无须声明版本,
    也就不会发生多个子模块使用版本不一致的情况,帮助降低依赖冲突的几率。如果子模块不声明依赖的使用,即使该依赖在父POM中的dependencyManagement中声明了,
    也不会产生任何效果

      1) 只能出现在父pom里

      2) 统一版本号

      3) 只是依赖声明,并不直接依赖,需要时在子项目中在声明要使用依赖的GA信息,V信息可以省略.-->

    <depencyManagement>
    <depencies>
    <depency>
    依赖包的坐标...
    </depency>
    </depencies>
    </depencyManagement>

    <build>:项目支持标签,一般用来引入插件
    <build>
    <plugins>
    <plugin>
    <!--插件坐标-->
    <groupId> </groupId>
    <artifactId> </artifactId>
    <version> </version>

    其他设置...

    </plugin>
    </plugins>
    </build>


    <properties>
    <!-- 文件拷贝时的编码 -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <!-- 编译时的编码 -->
    <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
    </properties>


    <plugins>给出构建过程中所用到的插件。


    compiler //编译


    也可以通过<extensions>激活构建插件,从而改变构建的过程。

    通常,通过<extensions>给出通用插件的一个具体实现,用于构建过程。

    maven仓库


    Maven仓库分为:本地仓库+远程仓库两大类
    远程仓库 : http://mvnrepository.com/

    远程仓库又分为:中央仓库+私服+其它公共远程仓库

  • 相关阅读:
    求最大子数组和
    第四周学习进度
    四则运算3
    实用工具箱app开发日记5
    实用工具箱app开发日记4
    实用工具箱app开发日记3
    实用工具箱app开发日记2
    实用工具箱app开发日记1
    《软件需求与分析》阅读笔记
    软件需求分析--阅读笔记3
  • 原文地址:https://www.cnblogs.com/shenhaha520/p/9263161.html
Copyright © 2020-2023  润新知