Apache Maven

项目构建工具 Apache Maven

Apache
Java 查看源码»
跨平台
Apache
2008-09-07

Maven 是一个流行的 Java 项目构建系统。

目前,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具。遗憾的是,Ant 的项目管理工具(作为make的替代工具)不能满足绝大多数开发人员的需要。通过检查 Ant 构建文件,很难发现项目的相关性信息和其它元信息(如开发人员/拥有者、版本或站点主页)。

Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目,而使用 Ant 则需要十几行。事实上,由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目现在使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

Maven vs Ant

那么,Maven 和 Ant 有什么不同呢?在回答这个问题以前,我要强调一点:Maven 和 Ant 针对构建问题的两个不同方面。Ant 为 Java 技术开发项目提供跨平台构建任务。Maven 本身描述项目的高级方面,它从 Ant 借用了绝大多数构建任务。因此,由于 Maven 和 Ant 代表两个差异很大的工具,所以我将只说明这两个工具的等同组件之间的区别,如表 1 所示。

表 1. Maven vs Ant

  Maven Ant
标准构建文件 project.xml 和 maven.xml build.xml
特性处理顺序
  1. ${maven.home}/bin/driver.properties

  2. ${project.home}/project.properties

  3. ${project.home}/build.properties

  4. ${user.home}/build.properties

  5. 通过 -D 命令行选项定义的系统特性

最后一个定义起决定作用。
  1. 通过 -D 命令行选项定义的系统特性

  2. 由 任务装入的特性

第一个定义最先被处理。
构建规则 构建规则更为动态(类似于编程语言);它们是基于 Jelly 的可执行 XML。 构建规则或多或少是静态的,除非使用

相关开发环境下的Maven插件:http://mevenide.codehaus.org/

的码云指数为
超过 的项目
加载中
此软件有 39 条评论,请先登录后再查看。

Apache Maven 3.6.3 发布,项目管理和构建工具

Apache Maven 3.6.3 发布了。pache Maven 是一个项目管理和构建工具。基于项目对象模型(POM)的概念, Maven 可以从中心位置管理项目的构建、报告和文档。 这是一个回归版本,用于修复 3.6....

2019/11/28 07:26

Apache Maven 3.6.2 发布,性能改进、内存减少

Apache Maven 3.6.2 发布了,此版本更新亮点包括: 此版本主要侧重于性能改进、更好的内存占用和更少的 CPU 使用率。 继续将 Maven Core 转换为使用 JSR 330 注解而不是 Plexus。 对“relea...

2019/09/08 07:33

Apache Maven 3.6.1 发布,项目管理和构建工具

Apache Maven 3.6.1 已发布,Apache Maven 是一个项目管理和构建工具。基于项目对象模型(POM)的概念, Maven 可以从中心位置管理项目的构建、报告和文档。 部分更新内容: 修复 [MNG-5705]...

2019/04/14 07:14

Apache Maven 3.6.0 发布,项目管理和构建工具

Apache Maven 3.6.0 已发布,Apache Maven 是一个项目管理和构建工具。基于项目对象模型(POM)的概念, Maven 可以从中心位置管理项目的构建、报告和文档。 更新内容: 修复 MNG-6311 - Mav...

2018/11/05 07:44

Apache Maven 3.5.4. 发布,项目管理和构建工具

Apache Maven 3.5.4 发布了,Apache Maven 是一个项目管理和构建工具。基于项目对象模型(POM)的概念, Maven 可以从中心位置管理项目的构建、报告和文档。 更新内容如下: Bugs: MNG-6370...

2018/06/23 23:15

华为云和 Sonatype 联合发布中国官方 Maven 中央仓

近期,华为云与 Sonatype 签署了有关 Maven 中央仓的合作协议,华为云将作为中国唯一 Maven 中央仓的官方镜像节点,为国内广大开发者提供便捷的加速服务。 华为云是领先的云服务提供商,致力...

2018/03/23 16:45

Maven 3.5.3 发布,项目管理和构建工具

Maven 3.5.3 已发布, Apache Maven 是一个项目管理和构建工具。基于项目对象模型(POM)的概念, Maven 可以从中心位置管理项目的构建、报告和文档。 主要更新内容: Bugs 修复: MNG-6323 ...

2018/03/10 23:47

Maven 3.5.2 发布,项目管理和构建工具

Maven 3.5.2 已发布, Apache Maven 是一个项目管理和构建工具。基于项目对象模型(POM)的概念, Maven 可以从中心位置管理项目的构建、报告和文档。 该版本包含大量修复和改进: 修复 MNG-...

2017/11/02 15:41

Maven 3.5.0 发布,项目构建工具

Apache Maven团队 宣布Maven 3.5.0 发布。该核心版本与插件无关,我们将分开进一步发布插件。 在Maven 3.3.9发布之后,Eclipse Aether 项目已经停用,代码库被迁移到Apache Maven项目。3.4.0...

2017/04/10 14:21

开源中国 Maven 镜像库关闭访问

2013年9月17日开源中国 Maven 镜像库上线,新闻详情。 2015年6月29日镜像库暂停服务,新闻详情。 2015年8月4日在天翼云的支持下,镜像库重新上线,新闻详情。 上半年我们停止了镜像库的浏览器...

2016/08/08 20:54

没有更多内容

加载失败,请刷新页面

2
回答
springboot做了基于maven的多环境配置后,idea里面不能启动了,如何解决

application.yaml spring: profiles: active: @profileActive@ pom.xml文件中配置...

2018/07/02 13:40
2
回答
通过jedis连接redis单机成功 使用JedisCluster连接redis集群一直报Could not get a resource from the pool是什么原因

小白刚开始接触redis,跪求大神指点,通过jedis连接redis单机成功 但是使用JedisCluster连接redis集群一直报Could not ...

2016/12/17 17:43
1
回答
有什么办法能快速找出并删除pom里没用的依赖
巴拉迪维 的回答 06/30 15:26
最佳答案
先装上 Maven Dependency Plugin <build> <plugins> <plugin> <artifactId>maven-dependency-plugin</artifactId> <version>3.1.2</version> </plugin> </plugin...
4
回答
jenkins自动化构建maven项目时,如何避免重复构建代码无变更模块

我们使用jenkins自动化构建maven项目,构建完成后,将构建完成的所有的jar包 约11个 ,通过脚本脚本处理至打包服务器,打包服务器按照规则将每一...

06/19 17:17
6
回答
maven部署私服jar后,无法正常拉取使用
采菇凉的小毛菇 的回答 06/13 17:06
最佳答案
问题解决了,因为我上传的包依赖了 spring-boot-parent 所以打包的时候自动带上tomcat,spring-web等等,是一个执行jar,并不是工具类.把spring-boot-parent去掉就好了
1
回答
Spring+SpringMVC+MyBatis+Maven项目中,log4j报错

log4j在有log4j.properties的情况下在控制台提示如下错误: log4j:ERROR A "org.apache.log4j.Consol...

06/02 15:47
6
回答
为什么Spring Boot打成的jar包运行时提示数据库URL不以jdbc开头?

使用Maven打包的Spring Boot项目,数据库URL提示不以jdbc开头,配置文件如下: 直接在IDEA中通过Spring Boot运行没有问题,...

05/29 17:51
1
回答
deploy自己的包上maven中央仓库时无法传输

每次 执行mvn clean deploy 时在上传包的阶段就会报无法传输的问题。求指教。。。跪谢 [INFO] --- maven-install-pl...

05/28 10:26
4
回答
Idea build程序包xxxx找不到
漂泊的树叶 的回答 05/25 15:45
最佳答案
虽然不知道究竟哪里有问题, 但是重置了idea设置就好了
4
回答
poi导出excle报不能初始化HSSFColor

做了两个统计,一个可以正常导出,一个就报下面错误 2018-11-19 11:44:45 WARN [http-nio-8080-exec-1751] E...

2018/11/19 15:43

没有更多内容

加载失败,请刷新页面

<maven>maven插件之maven-shade-plugin

maven-shade-plugin 打包 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.1.1</version> <executions> <execu......

2019/05/05 18:39
30
0
maven(1)之 认识maven

简单的来说是个类似于ANT,但比ANT更强的项目管理工具。 Maven是什么? 比较正式的定义是:Maven是一个项目管理工具, 是基于项目对象模型(POM),可以通过一段描述信息来管理项目的构建,报...

2016/05/26 13:46
69
0
Maven - Maven Project与Maven Module区别和联系

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/J080624/article/details/81067587 Maven Module也是一个m...

2019/11/28 16:58
53
0
maven

Apache Maven 是一套软件工程管理和整合工具。基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven 能够管理项目的构建、报告和文档。

2015/11/13 09:10
64
0
【maven】maven源码打包

1.打包时附加外部Jar包   <!--编译+外部 Jar打包--> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <source>1.7</source> <target...

2019/02/14 14:30
177
0
Maven

Maven

2015/01/16 14:42
76
0
Maven

Maven 1. 什么是Maven? 乍一看,Maven看起来很多东西,但简而言之,Maven试图将模式应用于项目的构建基础架构,以便通过提供使用最佳实践的明确路径来提高理解力和生产力。Maven本质上是一个...

2019/03/29 09:13
59
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部