zoukankan      html  css  js  c++  java
  • 什么是Maven

    Maven是当前最受欢迎的Java项目管理构建自动化综合工具,类似以前Java中的Ant、node.js中的npm、dotNet中的nuget、PHP中的Composer。

    Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。

    每个Java项目的目录结构都没有一个统一的标准,配置文件到处都是,单元测试代码到底应该放在那里也没有一个权威的规范。

    因此,我们就要用到Maven(使用Ant也可以,不过编写Ant的xml脚本比较麻烦)----一个项目管理工具。

    Maven主要做了两件事:

    1. 统一开发规范与工具
    2. 统一管理jar包

    1.1、为什么要Maven

    在开发中经常需要依赖第三方的包,包与包之间存在依赖关系,版本间还有兼容性问题,有时还里要将旧的包升级或降级,当项目复杂到一定程度时包管理变得非常重要。

    image

    如果没有Maven,你可能不得不经历下面的过程:

    1. 如果使用了spring,去spring的官网下载jar包;如果使用hibernate,去hibernate的官网下载Jar包;如果使用Log4j,去log4j的官网下载jar包.....
    2. 当某些jar包有依赖的时候,还要去下载对应的依赖jar包
    3. 当jar包依赖有冲突时,不得不一个一个的排查
    4. 执行构建时,需要使用ant写出很多重复的任务代码
    5. 当新人加入开发时,需要拷贝大量的jar包,然后重复进行构建
    6. 当进行测试时,需要一个一个的运行....检查

    有了Maven,它提供了三种功能:

    1. 依赖的管理:仅仅通过jar包的几个属性,就能确定唯一的jar包,在指定的文件pom.xml中,只要写入这些依赖属性,就会自动下载并管理jar包。
    2. 项目的构建:内置很多的插件与生命周期,支持多种任务,比如校验、编译、测试、打包、部署、发布...
    3. 项目的知识管理:管理项目相关的其他内容,比如开发者信息,版本等等

    1.2、资源与资料下载

    官网:http://maven.apache.org/

    教程:https://www.yiibai.com/maven/

    Maven库:http://repo2.maven.org/maven2/

    中央仓库资源:

    http://mvnrepository.com/

    https://search.maven.org/

  • 相关阅读:
    PAT Advanced 1067 Sort with Swap(0, i) (25分)
    PAT Advanced 1048 Find Coins (25分)
    PAT Advanced 1060 Are They Equal (25分)
    PAT Advanced 1088 Rational Arithmetic (20分)
    PAT Advanced 1032 Sharing (25分)
    Linux的at命令
    Sublime Text3使用指南
    IntelliJ IDEA创建第一个Groovy工程
    Sublime Text3 安装ftp插件
    Sublime Text3配置Groovy运行环境
  • 原文地址:https://www.cnblogs.com/zhouyon/p/14724544.html
Copyright © 2011-2022 走看看