zoukankan      html  css  js  c++  java
  • 读书笔记-《Maven实战》-2018/4/17

    第五章 坐标和依赖

    1.如同笛卡尔坐标系一样,Maven也通过坐标三元素定位一个资源。

     <groupId>com.dengchengchao.test</groupId>
        <artifactId>demo</artifactId>
        <version>0.0.1-SNAPSHOT</version>

    下面详解一下每个元素的含义:

    groupId:

    定义当前Maven项目隶属的实际项目。Maven使用模块化的概念,将每个项目分为几个模块,比如SpringFramework分为spring-core,spring-context等。

    通常groupId定义到组织下面的项目层次。

    比如:一个公司有很多项目,一个项目有很多模块。

    那么:groupId对应为项目名称。artifactId定义到模块

    artifactId:

    定义当前Maven项目隶属的模块。建议使用实际项目作为artifact的名称,比如spring-core不仅仅叫core一样

    原因:使用Maven生成的构建,都会使用artifactId作为开头,比如:spring-core-2.0.0.jar,使用实际项目作为前缀之后,相同的项目的模块就会自动的归类到一起,方便区分

    version:

    定义当前Maven项目的所处版本。Maven定义了一套完整的版本规范以及快照(SHAPSHOT)的概念,将在13章介绍。

    以上三个元素用于定位一个Maven项目,也就是说只要这三个元素项目,获取的Maven项目就一定是相同的。

    同时,我们也需要其他一些元素描述我们的项目信息,不过,这些都不是必须的元素

    packaging:

    定义Maven项目的打包方式,需要知道的是,jar打包和war打包的方式不同。packaging默认为jar

    classifier:

    定义Maven项目生成的附属构建,比如除了生成主构件的jar包以外,还可能生成spring-core-2.0.0-javadoc.jar、spring-core-2.0.0-sources.jar等。

    在上述五个元素中,groupId,artifactId,version是必须的,packaging是可选的,classifier是不能直接定义的。

    注:packaging不一定与构建扩展名对应。比如使用war打包方式打包的一个项目,最后可能会生成一个非.war文件。

    2. Maven项目实战:搭建邮件系统

  • 相关阅读:
    《孙子兵法》【行军第九】
    《孙子兵法》【虚实第六】
    《孙子兵法》【地形第十】
    企业无线局域网的搭建
    企业无线局域网的搭建
    UDDI
    (转载)Linux:Ldd命令介绍及使用方法
    (转载)传递给const引用形参的实参要求
    (转载)千万不要把bool设计成函数参数
    (转载)Linux下如何修改终端提示符?
  • 原文地址:https://www.cnblogs.com/dengchengchao/p/8876882.html
Copyright © 2011-2022 走看看