收藏 分享(赏)

Maven培训课件.ppt

上传人:精品资料 文档编号:9990366 上传时间:2019-09-25 格式:PPT 页数:28 大小:588.50KB
下载 相关 举报
Maven培训课件.ppt_第1页
第1页 / 共28页
Maven培训课件.ppt_第2页
第2页 / 共28页
Maven培训课件.ppt_第3页
第3页 / 共28页
Maven培训课件.ppt_第4页
第4页 / 共28页
Maven培训课件.ppt_第5页
第5页 / 共28页
点击查看更多>>
资源描述

1、1,Maven 入门,2,课程目的,了解Maven的基本概念 能使用常见的Maven命令,3,大纲,Maven2基础 由来 安装使用 基本概念 常用命令一览 参考资料,4,Maven由来,Brett Porter,Jason Van Zyl,5,简介,Maven2是一个近乎“业界标准”的构建工具 源自Turbine Antx借鉴了maven1的很多经验 POM,新的项目构建、管理概念 Apache上绝大部分的Java项目都用Maven编译,6,Maven是什么?,项目构建工具 编译代码 管理项目之间的依赖 管理二进制库 方便扩展 过程标准化,7,B2B编译工具沿革,最早,我们用Makefile

2、来build系统 Makefile不适合Java的编译 后来,我们用Ant来build系统 开始时很不错 随着项目增多,出现困难 利用beanshell控制Ant API,将常用操作写成plugin,增加中心repository控制 即Antx 1.0 简化了Ant的配置 但beanshell-based plugin很难掌握 利用maven 1.0中的jelly来控制Ant API 即Antx 2.0 简化了创建plugin的过程 迁移到Maven2,8,Maven安装,前提条件 JDK(推荐JDK5) 设置JAVA_HOME环境变量 从官方网站下载Maven最新版(2.2.1) http:

3、/maven.apache.org/download.html 解压maven包,设置两个环境变量:M2_HOME和path即可。 M2_HOME=c:dev-toolsmaven-2.2.1path=%M2_HOME%bin 检查安装结果 打开命令行窗口,输入: mvn -version,9,创建Maven项目,先创建一个c:learn-maven目录 在此目录下,用mvn命令创建空白项目: mvn archetype:create -DgroupId=com.alibaba -DartifactId=myproject 目录结构如下: myproject pom.xml - 项目描述文件

4、src main - java - 源代码目录 main - test 测试代码目录 target - 编译结果,10,Maven /Antx目录结构比较,Maven2项目,Antx项目,VS,11,创建Maven项目-修改pom.xml,修改项目描述文件:mons.beanutils1.7.0,12,创建Maven项目-build,在learn-maven/myproject目录下, 执行:mvn install INFO jar:jar execution: default-jar INFO Building jar: INFO - INFO BUILD SUCCESSFUL INFO -

5、 INFO Total time: 5 seconds INFO Finished at: Mon Nov 30 22:34:51 CST 2009 INFO Final Memory: 14M/25M INFO -,13,创建Maven项目-编写单元测试,Maven已经自动为我们创建了一个TestCase类在src/test/java目录下,打开看看吧。,14,创建Maven项目-执行测试,在learn-maven/myproject目录下, 执行:mvn test -T E S T S - Running com.alibaba.AppTest Tests run: 1, Failures

6、: 0, Errors: 0, Skipped: 0, Time elapsed: 0.031 secResults :Tests run: 1, Failures: 0, Errors: 0, Skipped: 0,15,项目之间的依赖:创建项目2,切换到learn-maven目录下,创建另一个项目:myproject2 mvn archetype:create -DgroupId=com.alibaba -DartifactId=myproject 找到myproject2/src/main 下的App.java并删除之 修改myproject2/pom.xml,在junit依赖项下面添加

7、对myproject的依赖,com.alibabamyproject 1.0-SNAPSHOT ,16,项目之间的依赖:创建项目2,MyProject2 完整POM如下:,17,项目之间的依赖:创建类,在myproject2/src/main/test目录下找到AppTest.java, 修改AppTest.java package com.alibaba;public class App2public static void main(String args) System.out.println( “!“);System.out.println( “Hello “ + new App()

8、);System.out.println( “!“); ,18,项目之间的依赖:编译并运行,在myproject2目录下 执行:mvn test 输出结果:,19,Maven基本概念 - 1,Project 任何您想build的事物,Maven都可以认为它们是工程。这些工程被定义为工程对象模型(POM,Poject Object Model)。一个工程可以依赖其它的工程;一个工程也可以由多个子工程构成 POM: POM(pom.xml)是Maven的核心文件,它是指示Maven如何工作的元数据文件,类似于Ant中的build.xml文件。POM文件位于每个工程的根目录中。,20,Maven基本

9、概念 - 2,GroupId: groupId是一个工程的在全局中唯一的标识符,一般地,它就是工程名。groupId有利于使用一个完全的包名,将一个工程从其它有类似名称的工程里区别出来。Artifact: artifact是工程将要产生或需要使用的文件,它可以是jar文件,源文件,二进制文件,war文件,甚至是pom文件。每个artifact都由groupId和artifactId组合的标识符唯一识别。需要被使用(依赖)的artifact都要放在仓库(见Repository)中,否则Maven无法找到(识别)它们。,21,Maven基本概念 - 3,Dependency: 为了能够build或

10、运行,一个典型的Java工程会依赖其它的包。在Maven中,这些被依赖的包就被称为dependency。dependency一般是其它工程的artifact。Plug-in: Maven提供了强大的插件扩展功能,的每一个功能都是由插件提供的。插件提供goal(类似于Ant中的target),并根据在POM中找到的元数据去完成工作。Maven插件大部分是由Java写成的,但它也支持用Beanshell或Ant脚本写成的插件。,22,Maven基本概念 - 4,Repository 仓库用于存放artifact,它可以是本地仓库,也可以是远程仓库。 B2B公共仓库: http:/repo.alib

11、aba- BU私有仓库 Maven有一个默认的远程仓库: http:/repo1.maven.org/maven2/ 在Windows平台上,本地仓库的默认地址是User_Home.m2repository。,23,Maven基本概念 - 5,SNAPSHOT 工程中可以(也应该)有一个特殊版本,它的版本号包括SNAPSHOT字样。该版本可以告诉Maven,该工程正处于开发阶段,会经常更新(但还未发布)。当其它工程使用此类型版本的artifact时,Maven会在仓库中寻找该artifact的最新版本,并自动下载、使用该最新版。,24,Maven基本概念 - 6,RELEASED LATEST,25,Maven常见命令 - 1,26,Maven常见命令 - 2,27,Maven简单故障排除,28,Maven参考资料,内网文档: http:/b2b-doc.alibaba- Maven官方文档:http:/maven.apache.org/users/index.html Maven权威指南 http:/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报