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 ...
随机推荐
- PAT1042. Shuffling Machine (20)
#include <iostream> #include <vector> using namespace std; int n; string card[54]={" ...
- Windows下使用MinGW在命令行编译运行C++程序
之前学习C语言的时候都是用IDE类似CodeBlocks的工具写完直接编译运行的,今天突然心血来潮,自己下一个编译器,在命令行下,编译运行C++程序,了解一下编译过程. 一.安装编译器 首先你需要下载 ...
- php和java优势对比
PHP很专一,用于创建动态网页的服务器端的脚本语言.作为一种为Web而特别设计的语言,PHP带来了许多商业机构渴望的特性. ·学习周期短,比较简单 ·快速的开发时间 ·非常高的性能 这 ...
- OLED取模笔记
- LeetCode OJ:Remove Duplicates from Sorted List (排好序的链表去重)
Given a sorted linked list, delete all duplicates such that each element appear only once. For examp ...
- 基于Python实现的四则运算生成程序
Github项目地址:传送门 小组成员:黄晓彬(代码实现) 黄钰城(代码审查) 需求: 1. 使用 -n 参数控制生成题目的个数. 2. 使用 -r 参数控制题目中数值(自然数.真分数和真分数分母)的 ...
- NSURLConnection / NSURLSession/ SDWebImage
1. NSURLConnection (iOS9开始被弃用)=========================================== 此类的对象加载一个URL请求对象,通过异步/同步的方 ...
- Python基础学习(第6天)
1.zip函数 1)zip函数在只有一个参数时运作的方式. x = [1, 2, 3] x = zip(x) print x输出:[(1,), (2,), (3,)] 2)zip函数在没有参数时运作的 ...
- 原创:项目管理的理论与实践 讲座的PPT
业余时间做的两个PPT,曾经给公司同事讲过,PPT内容毕竟还是不够全面,如果有不清楚的地方,欢迎提问 项目管理的理论与实践 虚拟案例-超市管理系统
- 登录页面jsp跳转到另一个jsp 与jsp-Servlet-jsp
登录页面jsp 到另一个jsp,与jsp-Servlet-jsp 都是可以从表单提交参数信息. 但是jsp-jsp ,只能通过<%=request.getParameter("use ...