maven一键构造及常用命令

1、maven的一键构建
我们不再使用本地的Tomcat对项目进行编译、测试、运行、打包、安装、部署等一系列过程,而是使用maven自身集成的Tomcat插件来完成这些操作的过程,这就是maven的一键构建。
2、maven项目标准目录结构
src/main/java 目录:核心代码部分
src/main/resources 目录:配置文件部分
src/test/java 目录:测试代码部分
src/test/resources 目录:测试配置文件部分
src/main/webapp 目录:页面资源文件部分,包括 js,css,图片等等
3、maven的常用命令
3.1 首先打开一个maven项目的根目录,复制项目地址 3.2 打开一个命令行窗口,进入到项目中 3.3 mvn clean(清除) 注意:输入 mvn clean 命令之后,发现项目目录中少了一个叫 target 的文件夹,这个命令的作用是将项目中经过编译生成的class文件删除掉。以后在工作中使用这个命令的情况是如果领导让我们接着另外一个人的项目进行开发,那么我们拿到他的项目之后,他的项目中包含了在他本地编译好的很多信息,那么我们要想将别人的项目导入到自己的本地环境中,就必须先执行 mvn clean 命令,因为我们每个人的开发环境不一定都是相同的,那么在别人电脑上能运行的项目,在我们电脑上就不一定能运行的通,所以我们要删除掉在他本地编译的所有信息,在自己的电脑上重新编译。下面介绍编译的命令
3.4 mvn compile(编译) 注意:当输入 mvn compile 命令之后,发现项目目录中又生成了一个叫 target 的文件夹,这个文件夹下放置的就是Java文件编译之后生成的class文件,可见 mvn compile 命令是将 src/main/java 下的代码进行了编译
此时 target 的目录结构: 3.5 mvn test (测试) 注意:先执行 mvn clean 清除掉之前编译的生成的文件,然后执行 mvn test 命令,这个命令就是将 src/test 下的测试的代码编译成class文件
此时 target 的目录结构: 可见,mvn test 命令不仅编译了 src/test 下的测试的代码,还编译了 src/main/java 下的正式代码
3.6 mvn package (打包) 注意:先执行 mvn clean 清除掉之前编译的生成的文件,然后执行 mvn package 命令,这个命令就是将项目打包,但是在打包之前也将 src/test 下的测试的代码进行了编译,还编译了 src/main/java 下的正式代码,然后再打成包
此时 target 的目录结构: 注意:maven自动帮我们打包,但是为什么会打成 war 包呢?这是因为我们指定了maven打包时的格式,在项目根目录下有一个 pom.xml 文件,打开这个文件 3.7 mvn install(安装) 注意:先执行 mvn clean 清除掉之前编译的生成的文件,然后执行 mvn install 命令,这个命令不仅将 src/test 下的测试的代码进行了编译,还编译了 src/main/java 下的正式代码,然后再打成包,又把这个包安装到了本地仓库。
此时 target 的目录结构: 3.8 总结:
上面几个命令分别对项目进行了 清除、编译、测试、打包、安装、发布。(注意:执行发布命令之前需要进行一些配置才能执行,而其他几种命令都能直接执行。没有演示发布命令)
当执行 test 命令时,maven 先把 compile 命令执行了一遍后再执行的 test 命令
当执行 package 命令时,maven 先把 compile 命令和 test 命令执行了一遍后再执行的 package 命令
当执行 install 命令时,maven 先把 compile 命令和 test 命令和 package 命令都执行了一遍后再执行 install 命令
当执行 deploy 命令时,maven 先把 compile 命令、test 命令、package 命令、install 命令都执行了一遍后再执行 deploy 命令
当执行后面的命令时,maven会自动把前面的命令执行一遍。
可见,这五个命令是有一定的关系的,其实这五个命令是一套生命周期,叫做 默认生命周期
清除命令也是一套生命周期,叫做 清理生命周期

maven一键构造及常用命令的更多相关文章

  1. (五)Maven目录结构及常用命令说明

    前面提到的部分知识有涉及到Maven目录结构与Maven常用的一些命令,在这里专门给大家做个简单的介绍. 1.Maven目录结构说明 Maven总体目录结构如下图: bin目录:该目录包含了mvn运行 ...

  2. Maven 教程(5)— Maven目录结构及常用命令说明

    原文地址:https://blog.csdn.net/liupeifeng3514/article/details/79543159 1.Maven目录结构说明 Maven总体目录结构如下图: bin ...

  3. Maven环境搭建及常用命令、生命周期

    一.下载maven包,解压 二.配置环境变量,MAVEN_PATH=解压路径 添加到path中 三.测试  mvn -v 查看maven版本 四.设置本地仓库的路径 在conf文件夹下的setting ...

  4. 转:Maven常用命令

    转:Maven常用命令 Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ Maven常用命令: 1 ...

  5. Maven常用命令(转)

    Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ Maven常用命令: 1. 创建Maven的普通 ...

  6. Maven常用命令(转载)

    Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ Maven常用命令: 1. 创建Maven的普通 ...

  7. Maven的常用命令

    转载:http://www.cnblogs.com/phoebus0501/archive/2011/05/10/2042511.html Maven库: http://repo2.maven.org ...

  8. maven 常用命令及操作(转)

    Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ Maven常用命令: 1. 创建Maven的普通 ...

  9. [No0000175]maven常用命令集合(收藏大全)

    抽了点时间,整理了一些maven常用命令参数,以便参考:参考了maven官网和网上其他一些maven追随者的文件,不在此一一列举,但表示感谢! mvn命令参数 mvn -v, --version 显示 ...

随机推荐

  1. Java 8 后的新功能梳理

    为什么要写这篇文章 经过了若干年的发展,Java逐步从java8升级为java11,java17. 让我们对比学习一下最新一版的LTS版本和java8比起来让代码简化了多少. 文本块(Text Blo ...

  2. 【LeetCode】Longest Word in Dictionary through Deleting 解题报告

    [LeetCode]Longest Word in Dictionary through Deleting 解题报告 标签(空格分隔): LeetCode 题目地址:https://leetcode. ...

  3. 【LeetCode】187. Repeated DNA Sequences 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 题目地址: https://leetcode.com/problems/repeated ...

  4. 1421 最大MOD值

    1421 最大MOD值 基准时间限制:1 秒 空间限制:131072 KB  有一个a数组,里面有n个整数.现在要从中找到两个数字(可以是同一个) ai,aj ,使得 ai mod aj 最大并且 a ...

  5. 一站式元数据治理平台——Datahub入门宝典

    随着数字化转型的工作推进,数据治理的工作已经被越来越多的公司提上了日程.作为新一代的元数据管理平台,Datahub在近一年的时间里发展迅猛,大有取代老牌元数据管理工具Atlas之势.国内Datahub ...

  6. [C++]vector去除重复元素

    #include <iostream> #include <vector> #include <algorithm> #include <set> us ...

  7. 微信公众号开发--.net core接入

    .net进行微信公众号开发的例子好像比较少,这里做个笔记 首先,我们需要让微信能访问到我们的项目,所以要么需要有一个可以部署项目的连接到公网下的服务器,要么可以通过端口转发将请求转发到我们的项目,总之 ...

  8. 快过年了,如何使用 AutoJS 自动化快速抢微信红包!

    快过年了,群里一般会充斥着各种红包,你抢红包的手速怎么样呢?AutoJS 是一款 Android 端的应用软件,它可以基于无障碍服务主动或基于任务,完成一系列自动化操作 官网:https://pro. ...

  9. JZOJ 3296 Luogu P3296 [SDOI2013]刺客信条

    前言 做法来自:@pzrpzr ,写一下!Orz pzr! 题目大意 \(n\) 个点的无根树,每个点有两个 \(0/1\) 权值,合适地安排节点在同构树中的顺序,使得前后对应的权值不同节点个数最小, ...

  10. [学习笔记] Oracle基础增删改查用法

    查询 select *|列名|表达式 from 表名 where 条件 order by 列名 select t.* from STUDENT.STUINFO t where t.stuname = ...