maven
yunzhonmghe
这个作者很懒,什么都没留下…
展开
-
Maven提高篇系列之(一)——多模块 vs 继承
通常来说,在Maven的多模块工程中,都存在一个pom类型的工程作为根模块,该工程只包含一个pom.xml文件,在该文件中以模块(module)的形式声明它所包含的子模块,即多模块工程。在子模块的pom.xml文件中,又以parent的形式声明其所属的父模块,即继承。然而,这两种声明并不必同时存在,我们将在下文中讲到这其中的区别。 (一)创建Maven多模块工程 多转载 2017-09-21 13:45:02 · 445 阅读 · 0 评论 -
Maven提高篇系列之(二)——配置Plugin到某个Phase(以Selenium集成测试为例)
持续交付要“自动化所有东西”,对于集成测试也是一样。集成测试和单元测试相比需要更多的环境准备工作,包括测试数据的准备和启动服务器等。在本篇中我们设想以下一种场景: 你开发了一个web应用,集成测试使用了Selenium,你希望通过一个Maven命令跑完所有的测试,包括集成测试。 Maven的plugin包含了一个或多个goal,每一个goal表示plug转载 2017-09-21 13:46:49 · 240 阅读 · 0 评论 -
Maven提高篇系列之(三)——使用自己的Repository(Nexus)
平时我们自己做的项目都是直接使用Maven提供的Central Repository,但是对于公司来说直接使用公共的Maven Central Repository就不见得是件好事了,比如我们需要考虑安全问题。此时你可以创建一个公司专属的Repository(Internal Repository),公司的所有项目都只和这个专属的Repository打交道,包括下载依赖,部署等。转载 2017-09-21 13:47:40 · 211 阅读 · 0 评论 -
Maven提高篇系列之(四)——使用Profile
在开发项目时,设想有以下场景: 你的Maven项目存放在一个远程代码库中(比如github),该项目需要访问数据库,你有两台电脑,一台是Linux,一台是Mac OS X,你希望在两台电脑上都能做项目开发。但是,安装Linux的电脑上安装的是MySQL数据库,而Mac OS X的电脑安装的是PostgreSQL数据库。此时你需要找到一种简单的方法在两种数据库连接中进行切换,你会怎么做转载 2017-09-21 13:48:28 · 291 阅读 · 0 评论 -
Maven提高篇系列之(五)——处理依赖冲突
在本系列的上一篇文章中,我们讲到了如何使用Profile,在本文中,我们将讲到如何处理Maven的依赖冲突。 不知道你在使用Maven时是否遇到过诸如"NoSuchMethodError"或"ClassNotFoundException"之类的问题,甚至发生这些问题的Java类你没都没有听说过。要搞清楚这里面的缘由,我们得学习Maven对依赖冲突的处理机制。 Mav转载 2017-09-21 13:49:24 · 219 阅读 · 0 评论 -
Maven提高篇系列之(六)——编写自己的Plugin(本系列完)
在本系列的上一篇文章中,我们讲到了如何处理依赖冲突,在本文中,我们将讲到如何编写自己的Plugin。 Maven就其本身来说只是提供一个执行环境,它并不知道需要在项目上完成什么操作,真正操作项目的是插件(plugin),比如编译Java有Compiler插件,打包有Jar插件等。所以要让Maven完成各种各样的任务,我们需要配置不同的插件,甚至自己编写插件。 你可能转载 2017-09-21 13:50:05 · 219 阅读 · 0 评论 -
Maven提高篇系列之(七)——引入自定义/本地/第三方 的jar
通常来说,系统需要引入自定义/本地/第三方 的jar到自己maven工程,可以通过以下2种方式 (一)将jar添加到本地仓库的做法: 假如我有一个自定义jar是:demo.jar 引入自定义jar方式一: 1 首先找到你的maven的配置文件{你maven的路径}\conf\settings.xml,然后打开settings.xml,查看你存放本地ja原创 2017-09-21 14:36:11 · 318 阅读 · 0 评论