Maven
文章平均质量分 71
挖坑埋你
这个作者很懒,什么都没留下…
展开
-
Maven 教程(1)— Maven初步了解与认识
本系列博客整理自很多网络文章,地址会有很多。。。Apache Maven是一个软件项目管理的综合工具。基于项目对象模型(POM)的概念,提供了帮助管理构建、文档、报告、依赖、发布等方法,Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。maven的好处在于可以将项目过程规范化、自动化、高效化以及强大...转载 2018-03-12 10:15:41 · 1028 阅读 · 0 评论 -
Linux下Maven私服Nexus3.x环境构建操作记录
私服介绍私服是指私有服务器,是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建。有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库;否则,私服请求外部的远程仓库,将构件下载到私服,再提供给本地仓库下载。 Nexus介绍Nexus是一个强大的Maven仓库管理器,它极大地简化了本地内部仓库的维护和外部仓库的访问。如果使用了公共...转载 2018-03-14 14:20:45 · 890 阅读 · 0 评论 -
Linux 下 Maven 的安装
请先安装JDK,参考:JDK安装(tar.gz)1、下载并解压源码包[root@peipei3514 /]# cd /usr/local/src/[root@peipei3514 src]# wget http://mirrors.shu.edu.cn/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar...原创 2018-03-14 14:31:57 · 591 阅读 · 0 评论 -
Maven 教程(17)— Maven Profile 和 Filtering 简介
每个项目都会有多套运行环境(开发,测试,正式等等),不同的环境配置也不尽相同(如jdbc.url),借助Jenkins和自动部署提供的便利,我们可以把不同环境的配置文件单独抽离出来,打完包后用对应环境的配置文件替换打包后的文件,其实maven已经给我们提供了替换方案:profile + filteringFilteringFiltering 是 maven 的 resource...转载 2018-03-31 23:27:53 · 2203 阅读 · 0 评论 -
Maven 教程(18)— 利用 Profile 构建不同环境的部署包
接上回继续,项目开发好以后,通常要在多个环境部署,象我们公司多达5种环境:本机环境(local)、(开发小组内自测的)开发环境(dev)、(提供给测试团队的)测试环境(test)、预发布环境(pre)、正式生产环境(prod),每种环境都有各自的配置参数,比如:数据库连接、远程调用的ws地址等等。如果每个环境build前手动修改这些参数,显然太不fashion.maven早就考虑到了这些问题,...转载 2018-04-01 10:52:32 · 550 阅读 · 0 评论 -
Maven 教程(19)— Maven的六类属性
内置属性主要有两个常用内置属性:${basedir}项目的根目录(包含pom.xml文件的目录),${version}项目版本POM属性用户可以使用该属性引用POM文件中对应元素的值,常用的POM属性包括:${project.build.sourceDirectory}:项目的主源码目录,默认为 src/main/java${project.build.testSourceDi...转载 2018-04-01 11:36:39 · 1571 阅读 · 0 评论 -
Maven 教程(20)— 使用maven-assembly-plugin插件来定制化打包
简单的说,maven-assembly-plugin 就是用来帮助打包用的,比如说打出一个什么类型的包,包里包括哪些内容等等。目前至少支持以下打包类型:ziptartar.gztar.bz2jardirwar默认情况下,打jar包时,只有在类路径上的文件资源会被打包到jar中,并且文件名是${artifactId}-${version}.jar,下面看看怎么用maven...原创 2018-04-01 14:32:55 · 28555 阅读 · 0 评论 -
Maven 教程(15)— 实现多个项目关联自动化构建(maven-invoker-plugin插件的使用)
一、场景设想一个团队正在开发一个项目 bus-core-api,并且有其他两个项目 app-web-ui 和 app-desktop-ui 依赖于这个项目。bus-core-api 项目为 1.0 快照版本。app-web-ui 项目使用的是 bus-core-api 项目的 1.0 快照。app-desktop-ui 项目使用的是 bus-core-api 项目的 1.0 快照。...原创 2018-03-28 13:58:32 · 2268 阅读 · 0 评论 -
Maven 教程(16)— pom.xml 文件详解
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0...转载 2018-03-28 20:37:12 · 601 阅读 · 0 评论 -
Maven 的 classifier 的作用
直接看一个例子,maven中要引入json包,于是使用了:<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.2.2</version>转载 2018-03-28 20:41:39 · 5573 阅读 · 0 评论 -
Maven 教程(21)— maven-compiler-plugin 插件详解
maven是个项目管理工具,如果我们不告诉它我们的代码要使用什么样的jdk版本编译的话,它就会用maven-compiler-plugin默认的jdk版本来进行处理,这样就容易出现版本不匹配,以至于可能导致编译不通过的问题。maven的默认编译使用的jdk版本貌似很低,使用maven-compiler-plugin插件可以指定项目源码的jdk版本,编译后的jdk版本,以及编码。&lt;pl...原创 2018-05-08 10:41:05 · 151209 阅读 · 8 评论 -
Maven 教程(14)— Maven聚合与继承
1、Maven聚合我们在平时的开发中,项目往往会被划分为好几个模块,比如common公共模块、system系统模块、log日志模块、reports统计模块、monitor监控模块等等。这时我们肯定会出现这么一个需要,我们需要一次构件多个模块,而不用每个模块都去mvn clean install一次,Maven聚合就是用来实现这个需求的。我们需要构建另外一个模块,假设是UidpWeb,然后通...转载 2018-03-14 12:44:42 · 901 阅读 · 0 评论 -
Maven 教程(13)— Maven插件解析运行机制
这里给大家详细说一下Maven的运行机制,让大家不仅知其然,更知其所以然。1、插件保存在哪里?与我们所依赖的构件一样,插件也是基于坐标保存在我们的Maven仓库当中的。在用到插件的时候会先从本地仓库查找插件,如果本地仓库没有则从远程仓库查找插件并下载到本地仓库。与普通的依赖构件不同的是,Maven会区别对待普通依赖的远程仓库与插件的远程仓库。前面提到的配置远程仓库只会对普通的依赖有...转载 2018-03-14 10:39:18 · 2381 阅读 · 0 评论 -
Maven 教程(12)— Maven生命周期和插件
除了坐标、依赖以及仓库之外,Maven的另外两个核心概念是生命周期和插件。在有关Maven的日常使用中,命令行的输入往往就对应了生命周期,如mvn package就表示执行默认生命周期阶段package。Maven的生命周期是抽象的,其实际行为都由插件来完成,如package阶段的任务可能就会由maven-jar-plugin完成。生命周期和插件两者协同工作,密不可分。1、Maven生命周...转载 2018-03-14 09:17:42 · 827 阅读 · 0 评论 -
Maven 教程(2)— Maven的安装与环境配置
想要安装 Apache Maven 在 Windows 系统上, 需要下载 Maven 的 zip 文件,并将其解压到你想安装的目录,并配置 Windows 环境变量。所需工具 :JDK;Maven;Windows 7。 注:Maven 3.2 要求 JDK 1.6 或以上版本, 而 Maven 3.0/3.1 需要 JDK 1.5 或以上。1、安装 JDK 并配置环...转载 2018-03-12 11:09:32 · 676 阅读 · 0 评论 -
Maven 教程(3)— Maven仓库介绍与本地仓库配置
1、Maven本地仓库/远程仓库的基本介绍本地仓库是指存在于我们本机的仓库,在我们加入依赖时候,首先会跑到我们的本地仓库去找,如果找不到则会跑到远程仓库中去找。对于依赖的包大家可以从这个地址进行搜索:http://mvnrepository.com/。远程仓库是指其他服务器上的仓库,包括全球中央仓库,公司内部的私服,又或者其他公司提供的公共库。后面会专门聊聊私服,公共库的话只是一个地址...转载 2018-03-13 11:09:08 · 1143 阅读 · 0 评论 -
Maven 教程(4)— 新建Maven项目
我们以简单的helloworld来作为入门的实例,有些人说掌握了helloworld你就掌握了这门技术的一半了,对于maven来说,你掌握helloworld,你可能还稀里糊涂的。1、从maven模板创建一个项目在命令提示符(Windows)中,浏览到要创建 Java 项目的文件夹。键入以下命令:mvn archetype:generate -DgroupId={project...转载 2018-03-13 16:27:55 · 1169 阅读 · 0 评论 -
Maven 教程(5)— Maven目录结构及常用命令说明
前面提到的部分知识有涉及到Maven目录结构与Maven常用的一些命令,在这里专门给大家做个简单的介绍。1、Maven目录结构说明Maven总体目录结构如下图: bin目录:该目录包含了mvn运行的脚本,这些脚本用来配置java命令,准备好classpath和相关的Java系统属性,然后执行Java命令。boot目录:该目录只包含一个文件,以maven3.5.2为例,...转载 2018-03-13 17:11:25 · 840 阅读 · 0 评论 -
Maven 教程(6)— Maven之pom.xml文件简单说明
通过前面几部分知识,我们对maven已经有了初步的印象,就像Make的Makefile、Ant的build.xml一样,Maven项目的核心是pom.xml。POM(Project Object Model,项目对象模型)定义了项目的基本信息,用于描述项目如何构建,声明依赖,等等。我们来看看maven中pom.xml文件主要标签的意思及其用法,来看一下pom.xml文件的结构:<pr...转载 2018-03-13 17:48:51 · 1045 阅读 · 0 评论 -
Maven 教程(7)— Maven使用的最佳实践
这里说一下在使用Maven过程中不是必须的,但十分有用的几个实践,关键时刻或许能解决您的问题。1、设置MAVEN_OPTS环境变量通常需要设置MAVEN_OPTS的值为-Xms128m -Xmx512m,因为Java默认的最大可用内存往往不能够满足Maven运行的需要,比如在项目较大时,使用Maven生成项目站点需要占用大量的内存,如果没有该配置,则很容易得到java.lang...转载 2018-03-13 18:05:20 · 666 阅读 · 0 评论 -
Maven 教程(8)— Eclipse创建Maven项目运行mvn命令
1、Eclipse创建Maven项目使用Eclipse创建一个Maven项目非常的简单,选择菜单项File>New>Other(也可以在项目结构空白处右击鼠标键),在弹出的对话框中选择Maven下的Maven Project,如图: 然后点击Next按钮,Next按钮,选择一个Archetype指定我们要创建的项目类型。我们选择普通的Java项目“maven-archetyp...转载 2018-03-13 18:21:41 · 1064 阅读 · 0 评论 -
Maven 教程(9)— Maven坐标详解
Maven的一个核心的作用就是管理项目的依赖,引入我们所需的各种jar包等。为了能自动化的解析任何一个Java构件,Maven必须将这些Jar包或者其他资源进行唯一标识,这是管理项目的依赖的基础,也就是我们要说的坐标。包括我们自己开发的项目,也是要通过坐标进行唯一标识的,这样才能才其它项目中进行依赖引用。1、何为Maven坐标关于坐标(Coordinate),大家最熟悉的应该就是数学中...转载 2018-03-13 18:35:52 · 1200 阅读 · 0 评论 -
Maven 教程(10)— Maven依赖详解
1、何为依赖?比如你是个男的,你要生孩子,呸呸呸…男的怎么生孩子,所以你得依赖你老婆,不过也不一定咯,你也可以依赖其她妹子。我们在平时的项目开发中也是同理,你需要依赖一些东西才能实现相应的功能,但相应的功能或许也可以依赖其它的东西实现,比如数据库操作吧,你可以依赖hibernate,但你也可以通过mybatis来做。这就是所谓的依赖关系咯。以前我们需要手动的去找hibernate或...转载 2018-03-13 19:17:07 · 1476 阅读 · 1 评论 -
Maven 教程(11)— Maven远程仓库的各种配置
1、远程仓库的配置在平时的开发中,我们往往不会使用默认的中央仓库,默认的中央仓库访问的速度比较慢,访问的人或许很多,有时候也无法满足我们项目的需求,可能项目需要的某些构件中央仓库中是没有的,而在其他远程仓库中有,如JBoss Maven仓库。这时,可以在pom.xml中配置该仓库,代码如下: <!-- 配置远程仓库 --> <repositories&g...转载 2018-03-13 19:43:09 · 1029 阅读 · 0 评论 -
Maven 教程(22)— Maven中 plugins 和 pluginManagement
plugins和pluginManagement的区别概述plugins 和 pluginManagement 的区别,和我们前面研究过的 dependencies 和 dependencyManagement 的区别是非常类似的。plugins 下的 plugin 是真实使用的,而 pluginManagement 下的 plugins 下的 plugin 则仅仅是一种声明,子项目中可以...原创 2018-05-08 11:15:11 · 28948 阅读 · 0 评论