zoukankan      html  css  js  c++  java
  • Maven for Eclipse 第一章 ——Maven的介绍

      最近深陷与一个无比垃圾的项目无法自拔,好久没有更新文章了。今天简单介绍一下 Maven 在 Eclipse 中的使用。文章的内容几乎出于《Maven for Eclipse》一书,此书言简意赅,实用性很强。

      首先,Maven 是一个软件项目管理和程序理解的工具,一般来说,软件项目管理包括规划,组织,管理资源池,形成资源评估等。简单来说,Maven是一个全面的方法对应用模式的过程构建基础设施,它主要有如下目标:

    • 简化程序的构建流程
    • 提供统一的构建系统
    • 提供质量项目信息
    • 提供了项目最佳实战的指导
    • 提供了透明的方式迁移新特性

      为了实现上述目标,Maven提供了一组构建标准,工件库模型,一个引擎,描述项目,和一个标准的生命周期构建、测试,和部署项目工件。

      1.Maven 的原则

        Maven 的原则主要有以下几点:

      • 约定大于配置。Maven定义了默认的项目结构和构建一个开发生命周期用来减轻开发负担。通过指定一个公开定义的模型,使项目便于理解。
      • 声明式执行。Maven定义了一个项目构建的生命周期,包括一系列的阶段,这些阶段由plugin goal 组成。plugin goal可以包括声明pom文件来定制一个项目的执行。
      • 重用性。Maven建立与可重用性。建立和执行声明在一个项目中可以使用不同的项目。Maven也很容易创建一个组建并整合到多个项目中。
      • 清晰的依赖关系。Maven负责依赖管理,从而减少开发人员的负担。不同的冲突处理依赖关系处理得不错。
      • 关注程序开发。标准的项目布局和构建生命周期,不需要开发构建;主要应该集中在项目的构建。

      2.Maven 的组建架构

        Maven 由下面几个不同的组建构建而成:

            2.1 Plexus 容器

              Plexus 是一个 ICO 容器,提供了面向组件编程的方式去构建模块,重用的组建可以很容易地用来组装何重用。它支持如下的一些特性。

          • 组件生命周期
          • 组建一致性策略  
          • 嵌套的容器
          • 组件配置
          • 自动织入
          • 组件依赖
          • 许多依赖注入技术,包括构造方法注入,setter 方法注入,私有属性 注入。  

              更多信息请访问:http://plexus.codehaus.org/.

            2.2 Wagon

               Maven Wagon 是一个传输的抽象用在 Maven artifact 和 仓库处理的代码中。Wagon 定义了统一的API,当前有如下供应者。

          • File
          • HTTP
          • HTTP lightweight
          • FTP
          • SSH/SCP
          • WebDAV

              更多信息请访问:https://maven.apache.org/wagon/.

            2.3 Maven Doxia

              Doxia是内容生成框架,为用户提供了强大的技术来生成静态内容和动态内容。Doxia还用于基于web的发布上下文环境生成静态网站,还可以合并到动态内容生成系统,如博客、wiki和内容管理系统.

              更多信息请访问:https://maven.apache.org/doxia/.

            2.4 Modello

              Maodllo 组件在 Maven 中用来生成不同类型的 artifact 在构建时根据数模模型的引用。

          • 数据模型的 Java POJO类型
          • Java POJO 转换成 XML
          • XML 转换成 Java POJO
          • 数据模型的 XDOC 文档
          • XML schema 验证 XML 内容是否匹配数据模型

              更多内容请访问:http://maven.apache.org/maven-1.x/plugins/modello/.

           2.5 Maven SCM

            这个组件提供了常用的 API 来执行源代码管理操作,以下类型是被 SCM 所支持的。

          • Bazaar
          • CVS
          • Git
          • Jazz
          • Mercurial
          • Perforce
          • StarTeam
          • Subversion
          • CM energy

            更多信息请访问:http://maven.apache.org/scm/.

  • 相关阅读:
    MongoDb的备份与恢复
    MongoDb的安装
    常用的命令
    mysql的备份
    java基础
    List中的set方法和add方法
    git的基本指令
    网口扫盲三:以太网芯片MAC和PHY的关系
    网口扫盲二:Mac与Phy组成原理的简单分析
    Vue生命周期
  • 原文地址:https://www.cnblogs.com/IcanFixIt/p/5797256.html
Copyright © 2011-2022 走看看