`
jaesonchen
  • 浏览: 309799 次
  • 来自: ...
社区版块
存档分类
最新评论

Maven学习总结(一)——Maven入门

 
阅读更多

一、Maven的基本概念

  Maven(翻译为"专家","内行")是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理

1.1、项目构建

  项目构建过程包括【清理项目】→【编译项目】→【测试项目】→【生成测试报告】→【打包项目】→【部署项目】这几个步骤,这六个步骤就是一个项目的完整构建过程。

  

 

  理想的项目构建是高度自动化,跨平台,可重用的组件,标准化的,使用maven就可以帮我们完成上述所说的项目构建过程。

1.2、依赖管理

  依赖指的是jar包之间的相互依赖,比如我们搭建一个Struts2的开发框架时,光光有struts2-core-2.3.16.3.jar这个jar包是不行的,struts2-core-2.3.16.3.jar还依赖其它的jar包,依赖管理指的就是使用Maven来管理项目中使用到的jar包,Maven管理的方式就是“自动下载项目所需要的jar包,统一管理jar包之间的依赖关系”。

1.3、使用Maven的好处

  Maven中使用约定,约定java源代码代码必须放在哪个目录下,编译好的java代码又必须放到哪个目录下,这些目录都有明确的约定。

  Maven的每一个动作都拥有一个生命周期,例如执行 mvn install 就可以自动执行编译,测试,打包等构建过程

  只需要定义一个pom.xml,然后把源码放到默认的目录,Maven帮我们处理其他事情

  使用Maven可以进行项目高度自动化构建,依赖管理(这是使用Maven最大的好处),仓库管理。

二、Maven下载

  下载地址:http://maven.apache.org/download.cgi

  

 

  下载完成后,得到一个压缩包,解压,可以看到maven的组成目录

  

 

  Maven目录分析

  • bin:含有mvn运行的脚本
  • boot:含有plexus-classworlds类加载器框架
  • conf:含有settings.xml配置文件
  • lib:含有Maven运行时所需要的java类库
  • LICENSE.txt, NOTICE.txt, README.txt针对Maven版本,第三方软件等简要介绍

三、Maven安装

  1、首先要确保电脑上已经安装了JDK(要jdk 1.6+的版本),配置好JDK的环境变量,使用如下的两个命令检查检查JDK安装的情况。

1 Echo %JAVA_HOME%
2 Java -version

  

 

  2、对apache-maven-3.3.9-bin.zip进行解压缩(解压目录最好不要有中文)

  

  3、设置系统环境变量:MAVEN_HOME

  

 

  4、设置环境变量Path,将%MAVEN_HOME%\bin加入Path中,一定要注意要用分号;与其他值隔开,如下图所示:

  

 

  %MAVEN_HOME%\bin代表的就是"C:\Development\apache-maven-3.3.9\bin"目录

  5、验证Maven安装是否成功

  打开cmd窗口

  

 

  输入"mvn –v"命令 查看Maven的相关信息,如下图所示:

  

 

  能够出现这样的信息就说明Maven的安装已经成功了。

  6、设置MAVEN_OPTS环境变量(可选配置)

  由于Maven命令实际上是执行了Java命令,所以可以通过JAVA命令参数的方式来设置MAVEN运行参数。MAVEN_OPTS环境变量正是用于此用途

  MAVEN_OPTS

  -Xms128m -Xmx512m,分别设置JVM的最小和最大内存,如下图所示:

  

 

四、Maven的简单使用

4.1、Maven项目的目录约定

MavenProjectRoot(项目根目录)
   |----src
   |     |----main
   |     |         |----java ——存放项目的.java文件
   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件
   |     |----test
   |     |         |----java ——存放所有测试.java文件,如JUnit测试类
   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件
   |----target ——项目输出位置
   |----pom.xml ----用于标识该项目是一个Maven项目

4.2、手动创建Maven项目,使用Maven编译

  1、创建项目根文件夹,例如Maven01

  

  2、在Maven01文件夹中创建“pom.xml”文件,如下图所示:

  

 

  pom.xml文件中的内容如下:

复制代码
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0" 
 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
 5 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 6     <!--所有的Maven项目都必须配置这四个配置项-->
 7     <modelVersion>4.0.0</modelVersion>
 8     <!--groupId指的是项目名的项目组,默认就是包名-->
 9     <groupId>com.jaeson.maven</groupId>
10     <!--artifactId指的是项目中的某一个模块,默认命名方式是"项目名-模块名"-->
11     <artifactId>hello-first</artifactId>
12     <!--version指的是版本,这里使用的是Maven的快照版本-->
13     <version>SNAPSHOT-0.0.1</version>
14 </project>
复制代码

  3.编写Java类文件,Maven项目规定,所有的*.java文件必须放在src目录下的main目录下的java目录中,在Maven01项目根目录中创建一个src目录,然后在src目录中创建main目录,在main目录中再创建java文件夹,如下图所示:

  

 

  在java文件夹下创建一个Hello.java文件

  

  在HelloWorld.java文件中编写如下代码:

1 public class HelloWorld{
2     public static void main(String[] args){
3         System.out.println("Hello Maven");
4     }
5 }

  4.使用Maven编译Hello.java,首先进入到项目根目录,然后使用命令”mvn compile”进行编译,如下图所示:

  

 



  

  使用Maven编译完成之后,在项目根目录下会生成一个target文件夹。

  
   打开target文件夹,可以看到里面有一个classes文件夹,如下图所示:

  

  classes文件夹存放的就是编译成功后生成的.class文件,如下图所示:

  

 

  5.使用"mvn clean"命令清除编译结果,也就是把编译生成的target文件夹删掉,如下图所示:

  

 

  执行完"mvn clean"命令后,target文件夹就会被删除了。

五、修改从Maven中心仓库下载到本地的jar包的默认存储位置

  从Maven中心仓库下载到本地的jar包的默认存放在”${user.home}/.m2/repository”中,${user.home}表示当前登录系统的用户目录(如"C:\Users\gacl"),如下图所示

  

 

  Jar包存放在这个位置不太好,我们希望能够自己定义下载下来的jar包的存放位置,因此我们可以自己设置下载到本地时的jar包的存放目录。

  在“E:\”目录下创建一个“repository”文件夹

  

 

  找到apache-maven-3.2.3\conf目录下的settings.xml文件,如下图所示:

  

 

  编辑setting.xml文件,如下图所示:

  

 

  加上下面的代码

1 <localRepository>E:/repository</localRepository>

  

 

  这样就可以把jar包下载到我们指定的E:/repository目录中了,如下图所示:

  

 

  把jar包下载到本地的好处就是,当编译时,会优先从本地的jar包去找,如果本地存在,就直接拿来用,如果不存在,就从Maven的中心仓库去下载。如下图所示:

  

 

  第一次执行"mvn compile"和"mvn clean"这两个命令时,Maven会去中央仓库下载需要的jar包,而第二次执行这两个命令时,由于所需的jar包已经在本地的仓库中存储,所以就可以直接拿来用了,这样就省去了去中央仓库下载jar包的时间。

 

  • 大小: 47.7 KB
  • 大小: 16.2 KB
  • 大小: 14.4 KB
  • 大小: 4.5 KB
  • 大小: 5.4 KB
  • 大小: 5.5 KB
  • 大小: 32.4 KB
  • 大小: 6.7 KB
  • 大小: 5.3 KB
  • 大小: 8.8 KB
  • 大小: 5.4 KB
  • 大小: 33.5 KB
  • 大小: 87 KB
  • 大小: 7 KB
  • 大小: 85.1 KB
  • 大小: 36.8 KB
  • 大小: 19.2 KB
  • 大小: 23.3 KB
  • 大小: 15.8 KB
  • 大小: 19.7 KB
  • 大小: 35.4 KB
  • 大小: 56 KB
  • 大小: 5.3 KB
分享到:
评论

相关推荐

    Maven实战——入门篇

    ### Maven实战——入门篇 #### Maven简介与概念 Maven是一种强大的、跨平台的项目管理工具,主要用于基于Java平台的项目构建、依赖管理和项目信息管理。无论是小型的开源类库项目还是大型的企业级应用,Maven都能...

    Maven权威指南,学习参考手册

    #### 引言:Maven——自动化构建与项目管理的利器 《Maven权威指南》是一部详尽解读Apache Maven的书籍,由Tim O'Brien、John Casey、Brian Fox、Bruce Snyder、Jason Van Zyl和Juven Xu等多位来自Sonatype Inc.的...

    SpringMVC学习(一)——SpringMVC入门小程序

    在“SpringMVC学习(一)——SpringMVC入门小程序”中,我们首先会接触到SpringMVC的基本概念。这通常包括以下几个核心组件: 1. **DispatcherServlet**:这是SpringMVC的前端控制器,负责接收HTTP请求,并根据配置...

    maven资料大全

    Maven3培训教程.pptx MavenQuickReferenceCard.pdf MavenTheDefinitiveGuide.pdf Maven实战.pdf Maven实战——入门篇.pdf Maven学习.doc 持续集成之路——搭建Maven私服.doc 利用m2eclipse生成WTP项目.pdf

    Maven入门教程.pdf

    Maven利用一个中心化的配置文件——pom.xml,来管理项目的依赖、构建过程、报告和其他元数据。 在Maven中,项目的标准目录结构如下: - `${basedir}`:项目的根目录 - `${basedir}/src/main/java`:存放主要的Java...

    Maven从入门到精通的吐血之作.pdf

    2.2.4 Eclipse版本——为项目增加新的依赖——Maven镜像 这部分涉及两个方面的内容:如何在Eclipse IDE中集成Maven支持,以及如何在POM文件中添加项目依赖。同时,为了提高依赖的下载速度,还可能会介绍如何配置...

    Maven2 5分钟学习教程(中文)----maven2 官方文档翻译

    **Maven 2 5分钟学习教程(中文)——官方文档翻译** Maven是一个强大的Java项目管理工具,它简化了构建、依赖管理和项目生命周期的管理。这篇5分钟学习教程是Maven 2官方文档的中文翻译,旨在帮助初学者快速理解和...

    java入门级spring加maven的小例子

    总结,这个入门级的Spring加Maven的小例子旨在帮助初学者理解如何使用Maven构建Spring项目,以及Spring的核心特性——依赖注入和面向切面编程。通过实践这个例子,你可以更好地掌握这些基础概念,为进一步深入学习...

    Maven实战(入门篇)

    #### 结论:Maven——全能的项目管理工具 Maven作为一款全能的项目管理工具,其优势在于构建自动化、依赖管理和项目信息标准化。通过Maven,开发者可以专注于业务逻辑的编写,而将繁琐的构建、依赖管理和信息整合...

    Maven的HelloWorld程序

    对于初学者来说,理解并创建一个基本的Maven项目,例如“HelloWorld”程序,是入门的绝佳方式。下面我们将详细探讨如何创建并运行这个简单的Maven HelloWorld程序。 首先,我们需要了解Maven的基本结构。每个Maven...

    maven 实战 in action 中文版 3.3

    - **Maven实战——入门篇**:这本书的入门部分,引导读者快速上手Maven,理解基本概念和操作。 - **MAVEN使用最佳实践.doc**:可能包含更具体的项目构建、部署和团队协作的最佳实践指导。 以上只是对Maven基础...

    Hibernate使用——入门

    **Hibernate使用——入门** Hibernate 是一个强大的开源对象关系映射(ORM)框架,它简化了Java应用程序与数据库之间的交互。这篇博文将引导你入门Hibernate,理解其基本概念和使用方法。 **1. Hibernate概述** ...

    maven入门教程

    Maven利用一个中心化的配置文件——pom.xml,来管理项目的依赖、构建过程、报告和其他元数据。 在Maven中,一个标准的项目结构如下: 1. `${basedir}`:项目根目录,包含pom.xml和所有子目录。 2. `${basedir}/src...

    Maven笔记1

    【Maven笔记1】—— Maven入门 Maven是一款强大的Java项目管理和构建工具,它解决了传统项目构建中的诸多痛点,使得Java开发变得更加规范和高效。在本文中,我们将深入探讨Maven的基本概念、功能以及如何解决上述...

    maven-definitive-guide

    本章将通过一个具体的示例——简单天气程序——来演示如何定制Maven项目,包括添加新的依赖、资源等。 **4.1.1 下载示例章节** 同样可以通过下载示例项目来快速实践本章中的示例。 **4.2 定义简单天气项目** 介绍...

    Maven项目管理工具

    Maven是Java开发领域中广泛使用的项目管理工具,它通过一个中心化的配置文件——`pom.xml`,帮助开发者管理项目的构建、依赖、报告和文档等各个方面。`pom.xml`文件是Maven的核心,它包含了项目的元数据,包括但不...

    【MyBatis入门】—— 第一个MyBatis应用

    【MyBatis入门】—— 第一个MyBatis应用 MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解...

    apache-maven

    - 详细介绍 Maven 的核心概念——项目对象模型(Project Object Model),包括元素的定义、作用和示例。 - **设置参考:** - 详细介绍 Maven 设置文件(`settings.xml`)的配置项及其含义,帮助用户自定义构建行为...

    Mybatis自学教程——入门篇demo

    在创建Mybatis项目时,首先要添加Mybatis的依赖库到你的项目构建工具(如Maven或Gradle)中。接着,你需要配置Mybatis的主配置文件(mybatis-config.xml),其中包含数据源、事务管理器等信息。同时,还需要创建...

Global site tag (gtag.js) - Google Analytics