maven的安装与使用(运行单元测试和打包等)
maven的下载与安装
maven是用于java的自动化构建工具。
1、下载: http://maven.apache.org/download.cgi
- 下载maven包,比如 apache-maven-3.6.1-bin.zip
- 解压maven包至任意目标盘,得到的解压包为 apache-maven-3.6.1
2、配置(需提前装好jdk)
- 在电脑中配置以下环境变量
M2_HOME D:\apache-maven-3.6.1
path ;D:\apache-maven-3.6.1\bin
3、测试是否安装成功
- 在cmd控制台输入:mvn -v,然后回车,结果如下:
- 在cmd控制台输入:mvn -v,然后回车,结果如下:
4、maven常用命令
- mvn compile
- mvn clean
- mvn test-compile
- mvn test
- mvn package
- mvn install
- mvn site
5、打包jar到本地仓库(即向maven本地仓库安装jar包)
mvn install:install-file -DgroupId=imsdriver(jar包的groupId) -DartifactId=imsdriver(jar包的artifactId) -Dversion=1.0(jar的版本号) -Dpackaging=jar -Dfile=D:\jar\imsdriver.jar(jar包的具体路径)
例如,安装jar包lucene-analyzers-3.6.2.jar到当前目录,首先进入到jar包所在位置,然后使用命令:
mvn install:install-file -DgroupId=org.apache.lucene -DartifactId=lucene-analyzers-common -Dversion=3.6.2 -Dpackaging=jar -Dfile=lucene-analyzers-3.6.2.jar
6、
mvn archetype:generate
#这个指令可以生成基本的maven工程的骨架
7、
mvn compile
#这个指令的作用是编译源码(即main目录下的文件,生成class文件),进入刚才创建的maven工程的第一层目录使用该指令,执行效果如下:
8、
mvn test-compile
#这个指令的作用是编译测试代码(即test目录下的文件),直接在maven工程的第一层执行该指令,执行效果如下:
9、
mvn test
# 运行应用程序中的单元测试,同上执行,执行效果如下:
10、
mvn site
# 生成项目相关信息(如,插件报告,依赖报告,概要版本,环境及版本信息等)
11、
mvn package
#该指令的作用是生成 jar 文件(打包当前项目成jar包)
12、
mvn install
#在本地maven仓库中安装 jar 文件
13、
mvn -Dmaven.test.skip=true
#忽略测试文档编译14、
mvn clean
#清除target目录中的内容(会删除target目录及里面的所有内容),执行效果如下:
实际使用
1、与clean结合
mvn clean compile #编译java代码
mvn clean package #打包,打包当前项目成jar包
mvn clean test #进行单元测试代码执行
mvn clean deploy # 部署到版本仓库
mvn clean install # 安装到本地maven仓库中
mvn clean package -Dmaven.test.skip=true 跳过test打包
2、maven测试由插件maven-surefire-plngin支持。在约定大于配置的情况下,maven默认会去src/test/java中执行如下格式的文件Testxyz.java或者XyzTest.java。也就是以Test开头或者以Test结尾的文件。
- 做单元测试时可以使用如下命令行:
mvn -Dtest=XyzTest test
- 假如需要测试多个文件时,可以使用逗号或者星号进行指定,使用如下格式的命令行:
mvn -Dtest=Xyz1, Xyz2, Xyz3 test
mvn -Dtest=Xyz* test
- 假如需要测试测试类中的方法,maven-surefire-plugin提供一个符号#,通过指定"[测试类]#[测试方法]",然后执行命令
mvn -Dtest=ClasName#testMethod test
- 也支持使用符号*,以类似正则表达式的形式匹配所有相关的方法,命令是
mvn -Dtest=ClassName#test* test
3、对测试代码打包
- 1、在需要打包程序的pom.xml文件中配置打包信息,比如
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>
./src/main/resources/testng.xml
</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
<suiteXmlFile>
中的./src/main/resources/testng.xml 这个为执行程序的文件所在路径(相对于pom文件)
2、在maven工程目录(即pom文件所在的目录)下执行打包命令:
mvn clean package
,即会将程序打包成jar包3、或者,也可以用maven自带的工具打包,如下
- 先点击clean,然后点击package,即完成打包
4、对接口开发代码(spring boot代码)打包
- 1、在需要打包程序的pom.xml文件中配置打包信息,如下
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.course.Application</mainClass>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<extdirs>${project.basedir}/lib</extdirs>
</compilerArguments>
</configuration>
</plugin>
</plugins>
</build>
若原有的pom文件中已有 <build> <plugins>
标签,则后续直接在<plugins>
后面写<plugin>
部分即可。
- 其中
<mainClass>com.course.Application</mainClass>
这里写入口类(启动类)程序,包含完整的包名;其他的都是springboot框架代码打包的固定写法。
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
这里分别是jdk的版本和打包时用的字符编码。
<extdirs>${project.basedir}/lib</extdirs>
这里是指保存程序类的目录,是固定不变的。2、执行
mvn clean package
命令打包
- 打包后,会把程序中用到的所有依赖包也都打包到jar文件中了,所以最终得到的jar包会比较大。
- 3、打包完后,运行jar包命令为:java –jar jar包.jar
- 用该命令运行的jar包,与在编辑器中运行启动该工程应用程序效果一样。
maven的安装与使用(运行单元测试和打包等)的更多相关文章
- 使用Maven运行单元测试
要通过Maven运行单元测试,发出此命令: mvn test 这会在你的项目中运行整个单元测试. 案例学习 创建两个单元测试,并通过 Maven 的运行它.参见一个简单的 Java 测试类: pack ...
- maven 学习---使用Maven运行单元测试
要通过Maven运行单元测试,发出此命令: mvn test 这会在你的项目中运行整个单元测试. 案例学习 创建两个单元测试,并通过 Maven 的运行它.参见一个简单的 Java 测试类: pack ...
- MyEclipse下Maven的安装配置
Maven常用命令: •mvn archetype:generate :创建 Maven 项目 •mvn compile :编译源代码 •mvn test-compile :编译测试代码 •mvn t ...
- Maven的安装、配置及使用入门
Maven的安装.配置及使用入门 本书代码下载 大家可以从我的网站下载本书的代码:http://www.juvenxu.com/mvn-in-action/,也可以通过我的网站与我取得联系,欢迎大家与 ...
- maven的安装与使用
一.Maven是什么 Maven是一个采用纯Java编写的开 源项目管理工具.Maven采用了一种被称之为project object model (POM)概念来管理项目,所有的项目配置信息都被定义 ...
- maven的安装与配置使用
一 maven的安装 1 在镜像(https://mirrors.tuna.tsinghua.edu.cn/apache/)中下载指定的版本(注意,Maven 版本与IDE版本应保持匹配). 2 ...
- Maven 的安装与配置
最近公司需要新起一个项目,想使用maven+springmvc+spring+mybatis+mysql实现,以前我们的项目都是传统的老项目,没用过maven,Eclipse版本是GALILEO的,有 ...
- 项目管理工具Maven的安装与使用
一.Maven的简介 1. 什么是maven 是Apache下的一个开源的项目,是纯java编写,并且只是用来管理java项目. 2. Maven的好处 maven项目管理jar节省磁盘空间 一键构建 ...
- Linux下Maven的安装与使用
pache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供.基于项目对象模型(POM)概念,Maven利 用一个中央信息片断能管理一个项目的构建.报 ...
随机推荐
- laravel的Validation检索验证错误消息
基本用法 处理错误消息 错误消息和视图 可用的验证规则 有条件地添加规则 自定义错误消息 自定义验证规则 基本用法 Laravel提供了一个简单.方便的工具,用于验证数据并通过validation类检 ...
- SpringBoot学习- 4、整合JWT
SpringBoot学习足迹 1.Json web token(JWT)是为了网络应用环境间传递声明而执行的一种基于JSON的开发标准(RFC 7519),该token被设计为紧凑且安全的,特别适用于 ...
- git上传代码技巧
1.一定要先在git上面创建项目然后把文件拉到本地先 1.1克隆到本地(orgin=>'你的远程仓库地址') git clone orgin 1.2初始化项目文件夹 git init 2.操作之 ...
- 虚拟磁盘VHD文件压缩方法
问题描述 因工作需要在Mac上跑了一个VirtualBox虚拟win7,使用对win系统友好的vhd格式作为虚拟硬盘.经过一段时间使用发现vhd占用空间远大于虚拟磁盘使用量,想办法减减肥才行. 步骤整 ...
- CentOS7下升级PHP版本为7.2
yum provides php #自带的只有5.4版本 rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm #更新源 rpm ...
- [CF467C] George and Job - DP,前缀和
简单dp + 前缀和 你谷这乱标难度的风气真是-- #include <bits/stdc++.h> using namespace std; #define int long long ...
- java List 排序,升序,降序
import java.util.*; public class EntrySets { public static void main(String[] args) { Map<Object, ...
- Python3标准库:string通用字符串操作
1. string:通用字符串操作 string模块在很早的Python版本中就有了.以前这个模块中提供的很多函数已经移植为str对象的方法,不过这个模块仍保留了很多有用的常量和类来处理str对象. ...
- vue引用fastClick后,ios输入框聚焦不灵敏问题
fastClick.prototype.focus = function (targetElement) { targetElement.focus() }
- Mybaits(11)延迟加载
一.概述 1.概念 就是在需要用到数据时才去进行加载,不需要用的数据就不加载数据.延迟加载也称为懒加载. 2.优缺点 优点:先从单表查询,需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要 ...