接下来,在前面两篇文章理解的基础上,我们来看下maven2是如何应用在淘宝项目中。

先看下项目工作环境中的setting.xml文件的配置:

这是一个最基本的设置,设置了登陆此资源库服务器的用户名、密码和资源库的位置。通过这两个设置,我们便可以从指定的资源库中获得相应的Jar包。

下面在看一下在大淘宝TC项目中pom.xml文件的配置:

在这个配置文件里分别设置了对父项目的继承(parent)、此项目的相关信息(groupId、artifactId等)、子模块(module)、编译设置(build)、测试资源(testResources)、插件(plugin)和项目依赖管理(dependencyManagement)。

从此配置文件可以看出:项目“tc-all”分别由五个子模块组成:“tc-client、tc-domain、tc-server、tc-refund-client、tc-refund-domain”。在testResource里定义了测试需要的资源文件的目录。在编译(build)里的插件(plugins)中分别设置了运行测试用例的插件maven-surefire-plugin及此插件运行的内容“ **/*BNCTest.java”(包含BNCTest后缀的java文件,即测试代码);测试覆盖率报告的插件maven-clover2-plugin,具体内容可参见官网:(http://docs.atlassian.com/maven-clover2-plugin/2.3.1/usage.html)。个人觉得这个pom.xml文件里最核心的是dependencyManagement,他里面的各个依赖项dependency将会在执行“ mvn -U clean eclipse:clean eclipse:eclipse ”命令时根据setting.xml里配置的server和mirror从指定的资源库里取出相应版本的jar包放到制定的本地资源库里<localRepository>D:\repo</localRepository>,到这里,一个TC项目的环境算是构建好了,使用eclipse加载此工程可以看到:

此时我想到了《maven权威指南》一书里说的“约定优于配置”, Maven 通过给项目提供明智的默认行为来融合这个概念。 在没有自定义的情况下,源代码假定是在 ${basedir}/src/main/java,资源文件假定是在
${basedir}/src/main/resources 。测试代码假定是在 ${basedir}/src/test 。项目假定会产生一个 JAR 文件。Maven 假定你想要把编译好的字节码放到${basedir}/target/classes 并且在 ${basedir}/target 创建一个可分发的 JAR文件。

项目开发中,开发人员在${basedir}/src/main/java目录中写好自己的代码,而接口测试人员可以根据此目录的设定好的接口在${basedir}/src/test/java目录里进行单元测试和集成测试用例的设计和编码,可以说是开发与测试同时进行,这样自然会减少在功能测试中的bug数。

当所有的开发和测试完成的时候,这时候maven的作用就凸显出来了。通过一些简单的命令,诸如:

mvn package:依据项目将在target文件下生成jar文件;

mvn install:    将项目的jar文件添加到本地资源库中, 以备依赖此项目时使用;

如果你有权限,你还可以将打好的jar包上传到远程的资源库中,供其他项目使用,如(mvn deploy:deploy-file -Dfile=yourJar.jar -Durl=dav:http://your url /repository -DpomFile=pom.xml )。

—————————————————————————

关于maven在淘宝项目的使用就简单的介绍到这里,如果想深入了解maven,《maven权威指南》一书里讲的很细致。文章中如有不妥之处请予以指出,同时也欢迎大家来共同交流、共同学习。谢谢!

转载于:https://www.cnblogs.com/shipengzhi/archive/2011/05/16/2047697.html

maven2学习总结(3,maven2在淘宝项目的应用)相关推荐

  1. 软件测试学习笔记(九)淘宝测试

    软件测试学习笔记(九)淘宝测试 视频链接:软件测试_中国大学MOOC 1.淘宝性能测试经历哪三个发展阶段?简述其工作内容. (1)业务发展-基础阶段 编写性能测试白皮书和测试文档,整理了常用性能测试的 ...

  2. python爬虫学习 之 定向爬取 淘宝商品价格

    python爬虫学习 之 定向爬取 淘宝商品价格 import requests import redef getHTMLText(url):try:r = requests.get(url, tim ...

  3. 菜鸟窝-仿京东淘宝项目学习笔记(二)ToolBar的基本使用

    本篇知识点均来自于菜鸟窝-仿京东淘宝实战项目视频中 今天继续仿京东淘宝项目的学习,第二天,学习ToolBar的基本使用,本篇记录视频中一些重要的笔记 笔记一:ToolBar的一些重要属性 xml st ...

  4. 使用vue做一个“淘宝“项目——3

    做出分类页面 前言:做出首页,详细请看前两篇文章 1.使用vue做一个"淘宝"项目(做出首页) 2.使用vue做一个"淘宝"项目(显示商品栏) 目录: 创建项目 ...

  5. python爬淘宝店铺_【Python爬虫案例学习】Python爬取淘宝店铺和评论

    安装开发需要的一些库 (1) 安装mysql 的驱动:在Windows上按win+r输入cmd打开命令行,输入命令pip install pymysql,回车即可. (2) 安装自动化测试的驱动sel ...

  6. 爬虫学习笔记:天猫(淘宝)评论数据爬虫

    目录 1.杂语 2.目的和方法 2.1 目的 2.2 爬虫方法 step1:获取cookie信息与评论url地址 step2:获取请求头信息user-agent step3:查看评论数据 step4: ...

  7. 爬虫学习笔记——Selenium爬取淘宝商品信息并保存

    在使用selenium来模拟浏览器操作,抓取淘宝商品信息前,先完成一些准备工作. 准备工作:需要安装selenium,pyquery,以及Chrome浏览器并配置ChromeDriver. 安装sel ...

  8. 前端学习(927):淘宝flexiblejs源码分析之pageshow原理

  9. 前端学习(926):淘宝flexiblejs源码分析之核心原理

    立即执行函数

最新文章

  1. 用Cobertura 测量测试覆盖率
  2. 台湾印象之一:金马奖之夜
  3. django-restframework使用
  4. 软件如何优雅地向前兼容?
  5. 数字通信原理_光耦继电器在实际应用中的作用以及工作原理!
  6. html没有插件怎么办,html网页包插件没有插入options.title
  7. c语言数组前缀和,关于最大子数组问题
  8. sklearn学习5-----模型评估(1) 分类度量
  9. RHEL7修改root密码
  10. 前端 实现 直角三角形 边长、角度计算工具
  11. 关于RuntimeError: Cannot re-initialize CUDA in forked subprocess和CUDA error: initialization error的解决
  12. 华为业务:组织架构和产品矩阵
  13. Vulnhub-Earth
  14. win10 运行debug程序
  15. Phpstorm好用插件
  16. 用友u8服务器安装后系统假死,服务器打开用友U8企业应用平台没有反应的问题。-用友U8...
  17. 工作手记之移动端中文输入法触发oninput事件的解决方法
  18. 机器翻译:西班牙文「---」英文
  19. osgQTWidget
  20. 实验四 面向对象的分析(软件工程)

热门文章

  1. 干货 | 解决分布式场景下数据一致性问题,我有办法!
  2. feign调用session丢失解决方案
  3. Andriod --- JetPack (六):Room 增删改查
  4. Java快速生成20亿数字_关于内存:Java-打印10亿到20亿
  5. php验证器的调用,ThinkPHP5 验证器的具体使用
  6. 如何面对边缘计算10个痛点?
  7. “数据中心迁移到IDC数据中心”最怕遇到这几个问题
  8. TF之DD:利用Inception模型+GD算法生成带背景的大尺寸、高质量的Deep Dream图片——五个架构设计思维导图
  9. 成功解决AttributeError: ‘int‘ object has no attribute ‘encode‘
  10. CV:传统视觉知识—机器视觉系统的基础知识(机器视觉三要素+典型的工业机器视觉系统五大组件)