`

Maven教程

阅读更多
Maven教程
1. Maven的出发点

在进行软件开发的过程中,无论什么项目,采用何种技术,使用何种编程语言,我们 都要重复相同的开发步骤:编码,测试,打包,发布,文档。实际上这些步骤是完全重复性的工作。那为什么让软件开发人员去重复这些工作?开发人员的主要任务 应该是关注商业逻辑并去实现它,而不是把时间浪费在学习如何在不同的环境中去打包,发布,。。。

Maven正是为了将开发人员从这些任务中解脱出来而诞生的。



2. Maven能做什么?

Maven是由早期为Jakarta Turbine定制的构建工具发展而来的,现在成为了一个独立的软件项目管理工具。Maven能够:

1)理解并管理整个软件开发周期,重用标准的构建过程,比如:编译,测试,打包等。同时Maven还可以通过相应的元数据,重用构建逻辑到一个项目。

2)Maven负责整个项目的构建过程。开发人员只需要描述项目基本信息在一个配置文件中:pom.xml。也就是说,Maven的使用者只需要回答“What”而不是“How”。



3. Maven并不只是一个构建工具,她还可以提供:

1)声明式依赖性管理

2)集中的组件库管理

3)文档的自动生成

4)报告的自动生成

4. Maven设计原则

1)Convention Over Configuration (约定优于配置)。在现实生活中,有很多常识性的东西,地球人都知道。比如说:如何过马路(红灯停绿灯行),如何开门,关门等。对于这些事情,人们已经有了默认的约定。



在软件开发过程中,道理也是类似的,如果我们事先约定好所有项目的目录结构,标 准开发过程(编译,测试,。。。),所有人都遵循这个约定。软件项目的管理就会变得简单很多。在现在流行的很多框架中,都使用了这个概念,比如EJB3和 Ruby on Rails。在Maven中默认的目录结构如下:



由上图可以看出以下几个标准的Maven目录:

src:源代码目录。所有的源代码都被放在了这个目录下。在这个目录下又包括了:
          1) main:所有的源代码放在这里。对于Java项目,还有一个下级子目录:java. 对于Flex项目则是flex,。。。

          2) test:所有的单元测试类放在这里。

target:所有编译过的类文件以及生成的打包文件(.jar, .war, ...)放在这里。
2)Reuse Build Logic (重用构建逻辑):Maven把构建逻辑封装到插件中来达到重用的目的。这样在Maven就有用于编译的插件,单元测试的插件,打包的插件,。。。Maven可以被理解成管理这些插件的框架。
3)Declarative Execution (声明式执行):Maven中所有的插件都是通过在POM中声明来定义的。Maven会理解所有在POM中的声明,并执行相应的插件。

5. 创建一个Maven项目

1) 下载Maven:http://maven.apache.org/

2) 解压缩下载的zip文件到本地目录下,比如:D:\Maven

3) 添加D:\Maven\bin到环境变量PATH中

4) 在命令行下运行:

mvn -version  或者 mvn -v

你应该看到如下图所示的Maven版本号:



5) 运行如下命令创建一个Maven项目:

mvn archetype:create -DgroupId=net.jianxi.tutorials
                                    -DartifactId=helloworld
                                    -DpackageName=net.jianxi.tutorials
该项目的目录结构如下图所示:



现在就可以运行一些Maven命令了

编译: mvn compile

单元测试: mvn test

构建并打包: mvn package

清理: mvn clean

安装 mvn clean install
分享到:
评论

相关推荐

    Maven 教程:基础篇-尚硅谷学习笔记 2022年

    **Maven教程:基础篇——尚硅谷学习笔记 2022年** Maven是一个强大的Java项目管理和构建工具,由Apache软件基金会开发。它通过提供一个标准的项目对象模型(Project Object Model,POM)来简化项目的构建过程,并...

    maven教程-maven教程-maven教程

    Maven是Java领域广泛使用的项目管理工具,它能够帮助开发者完成项目的构建、文档生成、报告、依赖管理和软件生命周期管理等工作。通过本文的介绍,我们可以了解到Maven的基本概念、安装配置、基本使用和深入应用详解...

    Maven教程.docx

    ### Maven教程知识点详解 #### 一、Maven概述 **Maven** 是一款项目管理和集成工具,主要用于简化软件项目的构建过程。它通过提供一个统一的标准生命周期框架,使得开发者能够自动完成项目的基础设施搭建工作。...

    IDEA搭建Maven教程

    **IDEA搭建Maven教程** **一、Maven下载与安装** 1. **访问Maven官方网站**:首先,你需要访问Apache官方Maven的下载页面,网址是`www.apache.org`,然后向下滚动找到Maven的相关部分。 2. **下载Maven压缩包**:...

    maven教程(含代码)

    maven教程(含代码)maven教程(含代码)maven教程(含代码)maven教程(含代码)maven教程(含代码)maven教程(含代码)maven教程(含代码)maven教程(含代码)maven教程(含代码)maven教程(含代码)maven教程...

    chm版本Maven教程

    maven教程,目录如下: Maven安装配置 Maven启用代理访问 Maven本地资源库 Maven中央存储库 如何从Maven远程存储库下载? Maven添加远程仓库 Maven依赖机制 定制库到Maven本地资源库 使用Maven创建Java项目 使用...

    最详细的MAVEN教程

    该文档详细记录了maven的下载使用方法,通过循序渐进的方法带你学会maven打包

    最新Maven教程(2022版)+视频+源码+资料.txt

    最新Maven教程(2022版)+视频+源码+资料.txt

    2020最新版Maven教程_核心技术讲解_千锋.pdf

    2020最新版Maven教程_核心技术讲解_千锋.pdf

    maven 教程

    ### Maven 教程知识点详解 #### 一、Maven 概念 **Maven** 是由 Apache 软件基金会支持的一款开源项目管理和综合工具。它通过定义项目对象模型(Project Object Model,简称 POM)的方式,实现了项目的构建、报告...

    Maven实战Maven教程

    ### Maven实战Maven教程:深度解析与应用指南 #### Maven:构建工具的革命者 Maven,作为一款功能强大的自动化构建工具,自2007年以来,在Java开发领域引发了深远的影响。其设计理念围绕着项目对象模型(Project ...

    Maven教程.pdf

    Maven 是一个流行的 Java 项目管理工具,它提供了项目构建、依赖管理和项目信息管理等强大功能。Maven 的核心是一个项目对象模型(POM)文件,该文件描述了项目的基本信息以及构建配置。通过使用 Maven,开发者可以...

    Maven教程资料.pdf

    本篇教程将带你深入理解Maven的核心概念和基本操作。 首先,Maven是一个基于项目对象模型(Project Object Model,简称POM)的项目管理工具。POM是Maven的核心,它是一个XML文件,包含了项目的基本信息、构建指令、...

    maven教程,项目教程+源代码,全教程

    ** Maven教程全攻略:项目构建与管理利器 ** Maven是一个强大的Java项目管理和构建工具,它简化了构建过程,统一了构建方式,并通过依赖管理帮助开发者解决类库版本冲突问题。本教程旨在全面讲解Maven的使用,包括...

    MAVEN教程,在Intellij IDEA中添加你之前安装的MAVEN的教程

    MAVEN教程,在Intellij IDEA中添加你之前安装的MAVEN的教程 MAVEN是JAVA打包必备工具,是JAVA程序员的必备技能之一 本文内容包括: MAVEN使用教程 如果你机子上已经安装了MAVEN,后又安装INTELIJ IDEA,如何将二者整合...

    maven教程-v1.0

    ### Maven教程知识点详解 #### Maven概述 - **Maven定义**:Maven是一款由Apache基金会提供的项目管理和构建工具。它的核心理念是通过一种简洁、统一的方式管理项目的构建、依赖关系和文档,以此来提高开发效率并...

    IDEA配置Maven教程

    IDEA配置Maven教程 Maven 是一个基于 Project Object Model(POM)的软件项目管理和构建工具,由Apache软件基金会开发和维护。Maven 项目对象模型(POM)是一种 XML 文件,用于描述项目的依赖关系、编译、测试、...

    阿里云服务器安装maven教程

    ### 阿里云服务器安装Maven教程 #### 一、前言 Maven是Java项目构建管理和依赖管理工具,其主要功能包括依赖管理和项目构建生命周期。在开发过程中,Maven能够帮助开发者自动完成编译、测试、打包、部署等任务,极...

Global site tag (gtag.js) - Google Analytics