Mave实战(1)——Maven介绍

[TOC]

1. Maven介绍

1.1. 何为Maven

Maven是一个跨平台的项目管理工具。

Maven主要服务于基于Java平台的项目构建依赖管理项目信息管理

1.1.1. Maven是优秀的构建工具

  • Maven的用途之一是服务于构建,它是一个异常强大的构建工具,能够帮我们自动化构建过程,从清理、编译、测试到生成报告,再到打包和部署。
  • Maven是跨平台的。
  • Maven最大化的消除了构建的重复,抽象了构建生命周期,并且为绝大部分的构建任务提供了已实现的插件。
  • Maven还帮助我们标准化构建过程。在Mavne之前,十个项目可能有十种构建方式;有了Maven之后,所有项目的构建命令都是简单一致的,这极大地避免了不必要的学习成本,而且有利于促进项目团队的标准化。

综上所述,Maven作为一个构建工具,不仅能帮助我们自动化构建,还能够抽象构建过程,提供构建任务实现;它跨平台,对外提供了一致的操作接口,这一切足以使他成为优秀的,流行的构建工具。

1.1.2. Maven不仅仅是构建工具

1.1.2.1. Maven的依赖管理

Maven提供了中央仓库,能帮我们自动下载构建。

几乎任何Java应用都会借用一些第三方的开源类库,这些类库都可通过依赖的方式引入到项目中来。随着依赖的增多,版本不一致、版本冲突、依赖臃肿等问题都会接踵而来。幸运的是Maven提供了一个优秀的解决方案,它通过一个坐标系统准确地定位每一个构建(artifact),也就是通过一组坐标Maven能够找到任何一个Java类库(如Jar文件)。Maven给这个类库世界引入了经纬,让它们变得有秩序,于是我们可以借助它来有序的管理依赖,轻松地解决那些繁杂的依赖问题。

1.1.2.2. Maven的项目信息管理

Maven还能帮助我们管理原本分散在项目中各个角落的项目信息,包括项目描述、开发者列表、版本控制系统地址、许可证、缺陷管理系统地址等。

除了直接的项目信息,通过Maven自动生成的站点,以及一些已有的插件,我们还能够轻松获得项目文档、测试报告、静态分析报告、源码版本日志报告等非常有价值的项目信息。

使用Maven还有一个额外的好处,即Maven对于项目目录结构、测试用例命名方式等内容都有既定的规则,只要遵循了这些成熟的规则,用户在项目间切换的时候就免去了额外的学习成本,可以说是约定优于配置(convention Over configuration)

时间: 2024-10-09 22:02:31

Mave实战(1)——Maven介绍的相关文章

软件开发工程师(JAVA)中级考试大纲之------- 四:(三)maven介绍及学习

Maven Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具.由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目.由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长. Maven是基于项目对象模型(POM),可以通过一

java实战系列-实战中MAVEN私服的搭建

 实战中MAVEN私服的搭建 利用maven来管理项目的构建,报告和文档已经成为了我们现在的共识,任何开源软件基本都在使用,当然我们现在的大部分公司也基本都在使用,我把以前使用maven的一些经验在进行加工呈现给大家,希望可以帮助一些当前正在学习maven的初学者们还有刚毕业的学子们! 我会结合Eclipse+nexus+maven的实践来个大家做介绍! Nexus是Maven仓库管理器,虽然我们可以从Maven中央仓库下载所需要的构件(artifact),但这样会让我们的编译过程变得相当的慢

Maven介绍与安装配置

Maven介绍: Maven是项目对象模型(POM),是一个项目模块管工具.能很好的管理模块化开发.模块jar包的分享,并且可以自动下载工程所需要的依赖包. 在开发的过程中我们需要一些可重用的代码来加快开发的速度,因为总不可能一些通用的代码每次都需要自己编写吧,那样的话效率很低,或许我们可以将这些类复制到别的开发工具中使用,但是一两个类还好说,如果有几十个类该如何复制,而且用复制这种方式的话代码也容易被修改或删除. 在早期没有Maven的时候,有一种方式是将可重用的代码打包成jar包,然后用导j

转:Maven介绍(创建工程项目以及下载所需要的jar包)

http://blog.csdn.net/guanghua2009/article/details/6644111 目前我还不太会用maven,慢慢学吧 目前就是用来下载自己要的jar包,先根据这篇转载的文章新建一个工程,然后修改pom.xml,然后把cmd拷贝到maven新建的工程的根目录下,运行命令:mvn compile,就会下载你想要的jar包,或者直接运行mvn package,你就能得到一个war包,把里面WEB-INF/lib的jar包拷贝出来就是你想要的了 至于maven下载下来

[Java聊天室服务器]实战之一 开篇介绍

前言 学习任何一个稍有难度的技术,要对其有充分理性的分析,之后果断做出决定---->也就是人们常说的"多谋善断":本系列虽然涉及的是socket相关的知识,但学习之前,更想和广大程序员分享的是一种心境:学习是一个循序渐进的过程,心态应该随时调节,保持戒骄戒躁的状态.比如最近在看网易公开课MIT<算法导论>,老师提到,学习算法之前要计算机数学+离散数学+概率论等课程的知识,所以一直学不好算法的程序员不妨从基础入手,这都是中国式教育惹的祸啊!(此处省略一万字......)

Maven介绍

maven 简单实用教程 1. Maven介绍 1.1. 简介 java编写的用于构建系统的自动化工具. 目前版本是2.0.9,注意maven2和maven1有很大区别,阅读第三方文档时需要区分版本. 1.2. Maven资源 ·         见官方网站: ·         The 5 minute test,官方简易入门文档: ·         Getting Started Tutorial,官方入门文档: ·         Build Cookbook,官方的cookbook:

maven介绍及私服搭建

1.Maven介绍Maven是款平台的项目管理工具.主要服务于基于java平台的项目构建,依赖管理和项目信息管理.2.Maven私服搭建环境介绍: 系统:Centos 7.4 64位.Jdk:1.8.maven:3.3.9.Nexus:2.5IP:192.168.154.1003.JDK环境安装#tar xf jdk-8u65-linux-x64.tar.gz -C /usr/local/#cd /usr/local/#ln -s jdk1.8.0_65/ jdk#echo "JAVA_HOME

Maven实战:Maven生命周期

前言 之前有写过一篇文章Maven实战,介绍了Maven的一些基本概念,以及对于一个初学者而言的Maven基础知识,当时在我看来掌握了这些基本是够用的. 随着工作的深入,越来越感觉对于Maven的理解不够,很多时候使用Maven出了问题都无法很快地解决,因此打算深入地从搭建Maven工程开始学习一下Maven,这篇文章就将自己的学习历程记录下来和网友朋友们分享. 从搭建最简单的Maven项目开始 LZ使用的是MyEclipse,那么就是用MyEclipse搭建一个简单的Maven项目.第一步,n

云计算Docker全面项目实战(Maven+Jenkins、日志管理ELK、WordPress博客镜像)

2013年,云计算领域从此多了一个名词“Docker”.以轻量著称,更好的去解决应用打包和部署.之前我们一直在构建Iaas,但通过Iaas去实现统一功  能还是相当复杂得,并且维护复杂.将特殊性封装到镜像中实现几乎一致得部署方法,它就是“Docker”,以容器为技术核心,实现了应用的标准化.企业可  以快速生成研发.测试环境,并且可以做到快速部署.实现了从产品研发环境到部署环境的一致化.Docker让研发更加专注于代码的编写,并且以“镜像”作  为交付.极大的缩短了产品的交付周期和实施周期. 课