maven环境配置详解,及maven项目的搭建及maven项目聚合
首先:Maven 3.2.1:不同版本中仓库中文件是不一样的,Maven运行,先找用户配置,再找全局配置
1. Maven全局配置:全局统一的配置文件,在maven的安装目录中
2. Maven用户配置:针对某一个开发环境所设的配置文件,在操作系统下的这个目录下有一个setting.xml
为了方便操作,建议只使用全局配置,不适用.m2下边的setting.xml。
在全局setting.xml中配置本地仓库
<localRepository>E:\repository\repository</localRepository>
注意:在命令行执行maven命令,只找全局配置
Eclipse执行:不配置全局,只需要配置maven用户配置:在本地仓库中创建一个setting.xml,此文件就是eclipse执行maven,找maven用户配置文件,目的是,读到这个文件的仓库地址
如何判断maven和eclipse整合好了呢,在eclipse中打开以下视图
发现下面内容则表示整合完成,可以使用仓库中的jar包
3.安装,
①http://maven.apache.org/download.cgi 下载maven,解压
②配置环境变量 M2_HOME D:\maven\apache-maven-3.3.9
path %M2_HOME%\bin
③检测是否安装成功:cmd mvn -version
4.MyEclipse中配置Windows -> Preferences -> MyEclipse -> Maven4MyEclipse ->Installations //D:\apache-maven-3.3.9-bin\apache-maven-3.3.9
4. 创建maven项目:
maven只说两种,一种quickstart,一种webapp
1. quickstart:仅仅配置依赖没有必要用webapp,使用quickstart就可以
5. GAV三坐标
G : Group Id (公司或者组织名称,不准确),应该是项目名称
A : Artifact Id 模块名称
V : Version
6. 创建一个maven工程,在pom.xml配置相应的依赖(例如springmvc,mybatis)
关键:①从mybatis官网下载mybatis的jar包,在mybatis目录中找到pom.xml文件,得到mybatis所有依赖的jar包的gav。
②再找mybatis和spring整合jar包,从mybatis官方网站下载mybatis整合包。同上找到pom.xml文件,找到之后发现pom.xml中mybatis和spring3.1.4整合,只需要将上面找到的两个pom.xml内容结合放到本系统技术架构模块pom.xml中。(过程中解决包与包之间的冲突工作)
关于 6 的解释
①从mybatis官网下载mybatis的jar包,
在mybatis目录中找到pom.xml文件,得到mybatis所有依赖的jar包的GAV
②再找mybatis和spring整合jar包,从mybatis官方网站下载mybatis整合包。
同上找到pom.xml文件,找到GAV,
只需要将上边找到的两个pom.xml内容结合放到本系统技术架构模块pom.xml中。
整合后pom.xml,就会在maven依赖中出现相应的jar包,如下图
7. 确定java的编译版本
工程右击->执行下图
7. maven项目聚合
开发在eclipse中开发,将代码提交到svn
测试从svn上得到代码,编译,打成war包,将war包拷贝到测试服务器
测试人员将各个模块从svn下得到,只需要在聚合工程,运行mave命令,将各个工程聚合,生成war包
创建聚合工程yycgparent:
负责:将各个功能模块聚合
创建maven工程yycgparent,不需要开发,quickstart就可以,
pom.xml 内容
(1)
改 <packaging>jar</packaging>为 <packaging>pom</packaging>
(2)
(3)需要在子模块中添加父模块节点,让子模块继承父模块。在子模块pom.xml中改为如下图
(4)聚合的目的是:在聚合工程目录中,运行maven命令,将各个工程聚合生成war包。①需要自动生成war包,需要在yycgproject的pom.xml添加生成war包的插件,如下代码:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<warSourceDirectory>src/main/webapp</warSourceDirectory>
</configuration>
</plugin>
②为了生成war包之后,自动启动tomcat运行(达到一步构建,执行一个命令:编译,测试,打包,运行..),tomcat运行插件
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.2.3</version>
<configuration>
<container>
<containerId>tomcat7x</containerId>
<home>e:/apache-tomcat-7.0.52</home> //这里tomcat目录要改
</container>
<configuration>
<type>existing</type>
<home>e:/apache-tomcat-7.0.52</home>
</configuration>
</configuration>
<executions>
<execution>
<id>cargo-run</id>
<phase>install</phase>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
(3)在cmd命令行执行工程聚合,达到一步构建:cmd进入yycgparent目录,这个目录必须有pom.xml文件
执行mvn命令
开发人员是可以这么运行的
cmd运行mvn命令,先找用户setting.xml(建议删除),再去找maven安装目录中的conf下的setting.xml(全局配置,一定要配置本地仓库),运行mvn install之后,检查本地仓库,是否三个工程的jar包已经发布到本地仓库
maven环境配置详解,及maven项目的搭建及maven项目聚合的更多相关文章
- Nginx+Tomcat的服务器端环境配置详解
这篇文章主要介绍了Nginx+Tomcat的服务器端环境配置详解,包括Nginx与Tomcat的监控开启方法,需要的朋友可以参考下 Nginx+tomcat是目前主流的Javaweb架构,如何让ngi ...
- mybatis 代码生成器(IDEA, Maven)及配置详解(部分配置你应该不知道)
目录 1 创建代码生成器 1.1 创建Maven项目 1.2 配置 generator.xml 1.3 配置 pom.xml 1.4 使用及测试 2 XML 配置详解 2.1 优先 2.2 官网没有的 ...
- AngularJS + CoffeeScript 前端开发环境配置详解
AngularJS 号称 '第一框架' ('The first framework') 确实是名不虚传.由其从jQuery中完全转入AngularJS后就有无法离开他的感觉了.虽然AngularJS的 ...
- Centos7 + Python3.6 + Django + virtualenv + gunicorn + supervisor 环境配置详解
跟着网上的教程走发现行不通阿!好多都是写个大概,而且每人的环境都是有些许差异的,比如说权限问题阿,等等都会造成安装的失败 说明:本教程在你已经拥有Centos7系统,已经安装好nginx服务器,已经安 ...
- web自动化开发环境配置详解
1.安装 nodejs Grunt和所有grunt插件都是基于nodejs来运行的, https://nodejs.org/ 安装完成之后在终端 node -v 查看安装版本 2.安装 grunt-C ...
- weex和vue开发环境配置详解(配置系统变量等等)
本文详细讲解如何搭建weex和vue开发环境 安装java 现在java安装包,网上的安装包都是国外的,很难下载下来 就用这个链接下载,亲测无毒,http://www.wmzhe.com/soft-3 ...
- maven assembly 配置详解
Maven Assembly插件介绍 博客分类: 项目构建 你是否想要创建一个包含脚本.配置文件以及所有运行时所依赖的元素(jar)Assembly插件能帮你构建一个完整的发布包. Assembl ...
- CentOS LAMP环境 配置详解
要想在linux上实现网页服务器(www)需要Apache这个服务器软件,不过Apache仅能提供最基本的静态网站数据而已,想要实现动态网站的话,最好还是要PHP与MySQL的支持,所以下面我们将会以 ...
- 关于scala环境配置详解
首先从官网下载适合自身电脑配置的scala安装包.scala下载官网网址:http://www.scala-lang.org/download/ 同时scala还有自己集成好的IDE,例如eclips ...
随机推荐
- PAT1063. Set Similarity (25)
来自http://blog.csdn.net/tiantangrenjian/article/details/16868399 set_intersection 交集 set_union 并集 s ...
- Web Service和Servlet的区别
没接触过web service今天看了一篇文章转过来. 在最开始学习Web Service时候,总觉得Web Service和Servlet没有什么区别,觉得Servlet可以对Http请求进行相应并 ...
- Android 中Json解析的几种框架(Gson、Jackson、FastJson、LoganSquare)使用与对比
介绍 移动互联网产品与服务器端通信的数据格式,如果没有特殊的需求的话,一般选择使用JSON格式,Android系统也原生的提供了JSON解析的API,但是它的速度很慢,而且没有提供简介方便的接口来提高 ...
- srm开发(基于ssh)(3)
联系人管理 (1)客户和联系人一对多配置(重点) (2)新增联系人 -新增功能实现 -Struts2实现文件上传 (3)联系人列表 -no session问题 (4)客户和联系人级联删除 联系人管理模 ...
- MVVM架构说明1
MVVM是Model-View-ViewModel的简写.微软的WPF带来了新的技术体验,如Sliverlight.音频.视频.3D.动画……,这导致了软件UI层更加细节化.可定制化.同时,在技术层面 ...
- react-quill 富文本编辑器
适合react的一款轻量级富文本编辑器 1.http://blog.csdn.net/xiaoxiao23333/article/details/62055128 (推荐一款Markdown富文本编辑 ...
- Python正则表达式------进阶
Python正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re ...
- GAN的原理入门
开发者自述:我是这样学习 GAN 的 from:https://www.leiphone.com/news/201707/1JEkcUZI1leAFq5L.html Generative Adve ...
- 【poj1195】Mobile phones(二维树状数组)
题目链接:http://poj.org/problem?id=1195 [题意] 给出一个全0的矩阵,然后一些操作 0 S:初始化矩阵,维数是S*S,值全为0,这个操作只有最开始出现一次 1 X Y ...
- NSPredicate(正则表达式)
1. 正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.通常被用来检索.替换那些符合某个模式的文本. 2. iOS中正则使用 有三种(NSPredicate, rangeOfStri ...