项目管理神器——maven篇(一)
来源:互联网 发布:出租车gps数据 编辑:程序博客网 时间:2024/06/05 19:20
Maven是基于项目对象模型【Project Object Model】,通过pom小段描述信息来管理项目构建、报告、一套强大的自动化构建工具,覆盖了我们的编译、测试、打包的过程,在项目管理周期提供了一个仓库【repository】的概念,统一管理项目jar包。简言之,使用maven让我们更有效进行管理项目。
一、Maven的安装
1、在apache官网上下载maven压缩包,解压到本地【如D盘根目录】,主要有以下几个文件夹:
【bin】包含mvn的运行脚本,在windows 的命令行中输入mvn就可运行这些脚本
【boot】包含一个类加载器的框架,maven使用它来加载自己的类库
【conf】包含一些配置文件,比如以后我们经常用到的setting.xml
【lib】maven运行所需的类库
2、配置MAVEN_HOME环境变量: D:\maven\apache-maven-3.2.3,在path变量末尾加入“%MAVEN_HOME%\bin;”
3、运行cmd命令,输入mvn –version,输出以下内容,则maven安装成功。
二、maven规定项目文件格式
在创建maven实例之前,首先我们需要先了解一下maven的目录结构:
项目中创建相应的目录存放对应的代码,分类打包利于代码管理,同样,maven也规定便于管理的规范文件目录创建规则。Maven规定用以下结构来创建maven项目:
如果每次本地创建maven项目,都需要手动建立这些文件夹,未免过于无聊。所以这里笔者介绍一款自动创建maven项目目录结构的插件:archetype_创建服务maven规定的目录骨架。
例如为名为maven02的项目文件创建maven目录具体操作如下:
1、cmd进入资源管理器,进入maven02文件路径【cd d:/mavenCode/maven02】
2、键入 archetype:generate,然后控制台便会开始下载archetype插件所需资源
3、所有资源下载完毕后,选择一个archetype的版本,输入最后一个版本号即可;随后开始设置maven02项目groupId【项目的包名】、artifactId【模块名】、version【版本号】
4、最后yes回车,名为maven02的maven项目文件路径建立完毕。
文件结构创建成功:
在实际使用中项目目录结构如下:
三、maven项目编译
在maven02项目中建立好maven项目后,编写简单的测试代码,便开始对该项目进行编译。同样也使用maven进行管理。在这里代码就不一一展示了。如下是通过【mvn compile】命令对maven项目进行编译。
1、如果项目报错,编译不过时,控制台会输出【ERROR】错误信息,并提示代码错误原因。
2、编译成功后,控制台输出如下,同时在项目文件中生成【target】文件用于存放编译生成的class文件。
编译之后,在maven01文件夹中生成了一个target 文件,成功编译的class便存放在target【classes】文件夹中。
四、常用的maven构建命令:
最后简单介绍一下maven构建常用命令:
【mvn -v】 查看maven版本
【mvn -compile】执行编译
【mvn -test】 执行maven项目的junit测试
【mvn -package】 将项目打包
【mvn -clean】 删除target文件
【mvn -install】 下载jar包到本地仓库中
这里提到了maven本地仓库,关于这个概念和具体应用场景,我们下篇博客继续更新。
- 项目管理神器——maven篇(一)
- 项目管理神器——maven篇(一)
- 项目管理神器——maven篇(二)Maven核心仓库
- 项目管理神器——Maven篇(三)使用Maven管理Eclipse项目创建、编译、打包
- Maven--项目管理神器
- 项目管理神器——Confluence篇
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】——Maven简介(一)
- 【项目管理和构建】—— Maven简介(一)
- elasticsearch 创建搜索初步
- oracle with语句详解
- 欢迎使用CSDN-markdown编辑器
- ORACLE临时表—ON COMMIT PRESERVE ROWS
- oracle alert log file(告警日志文件)
- 项目管理神器——maven篇(一)
- oracle 11g新特性:Pending Statistics
- LINUX VPS主机之间快速复制备份搬家
- oracle 存储过程执行权限
- oracle O7_DICTIONARY_ACCESSIBILITY参数
- oracle 数据块结构
- javamail实现发送邮件
- PL/SQL导入SQL文件乱码用PL/SQL的importtables->sqlinsert
- ORACLE中CONSTRAINT的四对属性