1. 什么是maven?
MAVEN的英文意思是为专家,是一个工具。MAVEN是跨平台的项目管理工具。主要服务于基于JAVA平台的项目构建、依赖管理和项目信息管理。
项目构建流程
项目构建的流程为:清理(清除上次构建的文件)→编译(对项目源文件进行编译)→测试(对编译出来的文件进行单元测试)→报告(生成单元测试报告)→打包(如果单元测试没有问题的话,就进行打包成war文件)→部署(将项目发布到服务器上)
2. 安装MAVEN的前提和下载地址
MAVEN是用JAVA代码写的,所以在安装MAVEN之前要确保机器上安装了JDK。
MAVEN的下载地址:http://maven.apache.org/download.html
3. MAVEN的目录结构
<1>bin目录:还有mvn运行的脚本。
<2>boot目录:含有plexus-classworlds类加载器框架。
<3>conf目录:含有settings.xml配置文件。
<4>lib目录:含有Maven运行时所需要的java类库。
<5>LICENSE.txt, NOTICE.txt, README.txt:是针对Maven版本,第三方软件等简要介绍。
4. MAVEN配置
<1>设置MAVEN_HOME环境变量
和设置JDK类似,首先要给MAVEN设置环境变量。找到环境变量,然后找到PATH路径,选择新建。变量值为你自己解压MAVEN的路径。(切记:不要取到bin目录)
然后再找到PATH,对其进行编辑,然后增加变量%MAVEN_HOME%\bin:
<2>设置MAVEN_OPTS环境变量
MAVEN随着项目的增大,可能导致MAVEN的内存不够支撑这些项目的内存,所以要进行设置。但是现在项目还小,可以跳过,不用设置。其默认大小为:-Xms128m -Xmx512m
<3>设置下载jar包仓库
前面已经说过在conf目录下有一个setting.xml配置文件,在这里面就可以设置仓库的位置。
<!-- localRepository
| The path to the local repository maven will use to store artifacts.
|
| Default: ~/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->
//要修改路径的代码的位置
其中,Default: ~/.m2/repository是仓库的默认路径,路径为:C盘_用户(也可能是User)_用户名称_.m2_repository
如果要修改路径就在上面说的位置上增加:<localRepository>新的仓库路径</localRepository>
然后要在你新建仓库路径下增加一个setting.xml文件,并且要和maven安装路径下的setting.xml文件内容要一致。
5. MAVEN目录约定结构
目录结构约定:
src/main/java —— 存放项目的.java文件
src/main/resources —— 存放项目资源文件,如spring, hibernate配置文件
src/test/java —— 存放所有测试.java文件,如JUnit测试类
src/test/resources —— 测试资源文件
target —— 项目输出位置
pom.xml —— maven项目核心配置文件
6. MAVEN命令
<1>打开cmd命令行,进入项目根目录(包含有pom.xml文件的目录)
<2>执行 mvn compile命令。执行完毕后,生成了maven工程编译完成后字节码文件的生成目录target
<3>cmd 中继续录入mvn clean命令。执行完毕后,字节码生成目录被删除
<4>cmd 中录入 mvn clean test命令。执行完毕后,字节码生成目录中生成了被测试类与测试类的编译字节码和测试执行过程日志与详细报告
<5>cmd 中录入 mvn clean compile命令。组合指令,先执行clean,再执行compile,通常应用于上线前执行,清除测试类
<6>cmd 中录入 mvn clean test命令。组合指令,先执行clean,再执行test,通常应用于测试环节
<7>cmd 中录入 mvn clean package命令。组合指令,先执行clean,再执行package,将项目打包,通常应用于发布前
执行过程:
清理————清空环境
编译————编译源码
测试————测试源码
打包————将编译的非测试类打包
<8>cmd 中录入 mvn clean install 查看仓库,当前项目被发布到仓库中
组合指令,先执行clean,再执行install,将项目打包,通常应用于发布前
执行过程:
清理————清空环境
编译————编译源码
测试————测试源码
打包————将编译的非测试类打包
部署————将打好的包发布到资源仓库中
7. CMD命令错误报错
错误范例
说明:MAVEN 命令输入错误,命令名称显示在[ERROR] Unknown lifecycle phase “compoile”
引号中的内容为输入错误的名称
498

被折叠的 条评论
为什么被折叠?



