常用命令:


打包:mvn package
编译:mvn compile
清空:mvn clean(清除编译后目录,默认是target目录)
运行测试:mvn test
安装jar包到本地仓库中:mvn install
跳过测试:mvn xxx -DskipTests

1、创建 Maven 工程

  

  ①、在 src/main/java 新建包 com.ys.maven,然后在这个包中创建类 HelloMaven.java

1
2
3
4
5
6
7
8
9
10
package com.ys.maven;
 
public class HelloMaven {
     
    //传入一个字符串并返回
    public String Hello(String name){
         
        return name;
    }
}

  ②、在 src/test/java 新建包 com.ys.maven,然后在这个包中创建类 HelloTest.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package com.ys.maven;
 
import junit.framework.Assert;
import org.junit.Test;
 
public class HelloTest {
     
    @Test
    public void testHello(){
        HelloMaven he = new HelloMaven();
        String name = he.Hello("Tom");
        //判断 Hello 传入的参数是否是 "maven"
        Assert.assertEquals("maven", name);
    }
 
}

  ③、pom.xml 文件如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
     http://maven.apache.org/xsd/maven-4.0.0.xsd">
      
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.ys</groupId>
  <artifactId>hellomaven</artifactId>
  <version>0.0.1-SNAPSHOT</version>
   
  <dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.0</version>
        <scope>test</scope>
    </dependency>
  </dependencies>
</project>

  为什么要这样写,我们后面会详细讲解。

  

2、Maven 的常用命令

1
2
3
4
5
1、mvn compile 编译,将Java 源程序编译成 class 字节码文件。
2、mvn test 测试,并生成测试报告
3、mvn clean 将以前编译得到的旧的 class 字节码文件删除
4、mvn pakage 打包,动态 web工程打 war包,Java工程打 jar 包。
5、mvn install 将项目生成 jar 包放在仓库中,以便别的模块调用

  

  ①、compile:将Java 源程序编译成 class 字节码文件。

  第一步:选择 pom.xml 文件,右键--->Run As ---->2 Maven build...

  

  第二步:在第一步执行完后弹出来的对话框中,输入 compile,然后点击 Run 按钮

  

  第三步:查看控制台

  

  第四步:在 target 目录下,我们会发现编译生成的 class 文件

  ②、test:测试,并生成测试报告

    第一步:选择 pom.xml 文件,右键--->Run As ---->2 Maven build...,然后在弹出框中输入 test

      或者选择 pom.xml 文件,右键--->Run As------>6 Maven test,如下图

  第二步:查看控制台

  分析测试程序,我们传入的参数是Tom,而我们希望的是maven,很显然是不相等的,那么测试失败

  

   如果测试类 HelloTest.java改为如下:
 
 

  

  重新执行 mvn test 命令,控制台如下:

  

  生成的测试报告可以在如下目录查看:target/surefire-reports

  

  

  ③、mvn clean 将以前编译得到的旧的 class 字节码文件删除

  第一步:选择 pom.xml 文件,右键--->Run As ---->2 Maven build...,然后在弹出框中输入 clean

    或者选择 pom.xml 文件,右键--->Run As------>3 Maven clean,如下图

   
  

  第二步:查看控制台

   
 
    

  第三步:发现 mvn compile 编译好的文件这时已经清除了

  

  ④、mvn pakage 打包,动态 web工程打 war包,Java工程打 jar 包。

  第一步:选择 pom.xml 文件,右键--->Run As ---->2 Maven build...,然后在弹出框中输入 package

    

  第二步:查看控制台

  

  第三步:进入到 target 目录,会发现打出来的 jar 包

  

  ⑤、mvn install 将项目生成 jar 包放在仓库中,以便别的模块调用

  这里我们就不截图了,执行命令后,进入到 settings.xml 文件中配置的仓库,你会发现生成的 jar 包

  

Maven build 命令介绍(转)的更多相关文章

  1. maven常用命令介绍

    mvn 3.0.4 创建maven项目命令  mvn  archetype:generate   -DgroupId=damocles-autocredit -DartifactId=damocles ...

  2. 转:maven常用命令介绍

    mvn 3.0.4 创建maven项目命令  mvn  archetype:generate   -DgroupId=damocles-autocredit -DartifactId=damocles ...

  3. Eclipse中 Run as --->Maven build 命令详解

    Maven Build  Goals: clean  清除编译,compile  编译,test  编译并测试,install 打包并发送到本地仓库,package 只是打成jar包,并不会发送到本地 ...

  4. maven常用命令介绍(持续更新)

    一.Maven的基本概念 主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.1.项目构建 项目构建过程包括[清理项目]→[编译项目]→[测试项目]→[生成测试报告]→[打包项目]→[ ...

  5. Maven学习总结(23)——Maven常用命令介绍

    1.生成eclipse项目:mvn eclipse:eclipse 2.清除eclipse的一些系统设置:mvn eclipse:clean 3.mvn tomcat:run 在tomcat里面运行 ...

  6. Eclipse中Maven插件部分常用功能命令介绍

    原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6689010.html Eclipse中安装Maven插件之后,就能很方便的管理Maven项 ...

  7. maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

    maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository. ...

  8. Maven常用命令及Eclipse应用

    一般来说,github上大多的java项目都是使用maven,ant等进行构建的.由于之前没有使用过maven,因此这几天对maven进行了简单的学习.古话说:“温故而知新”,一些命令长时间不使用都会 ...

  9. DotNet Run 命令介绍

    前言 本篇主要介绍 asp.net core 中,使用 dotnet tools 运行 dotnet run 之后的系统执行过程. 如果你觉得对你有帮助的话,不妨点个[推荐]. 目录 dotnet r ...

随机推荐

  1. LU分解法求逆矩阵 C语言实现

    最近在网上找了下,没有找到我想要的C语言版本,找到的也是错误的.故自己写了一个,并进行了相关测试,贴出来分享. 具体的LU分解算法就不细说了,随便找本书就知道了,关键是分解的处理流程,细节特别容易出错 ...

  2. java web项目启动时浏览器路径不用输入项目名称方法

    http://blog.csdn.net/qq542045215/article/details/44923851

  3. CSS Selectors

    CSS selectors are used to "find" (or select) HTML elements based on their element name, id ...

  4. MQTT QOS含义

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  5. 网络1911、1912 C语言第2次作业--循环结构 批改总结

    一.评分规则 伪代码务必是文字+代码描述,直接反应代码,每题扣1分 提交列表没内容,或者太简单,每题得分0分.注意选择提交列表长的题目介绍. 代码格式不规范,继续扣分. 代码互评,内容简单,0分. 原 ...

  6. 环信及时通讯 Laravel 扩展包

    laravel-easemob 环信及时通讯 laravel 包开发,用于环信用户.群.聊天室等功能 github 地址   安装 加载包 "link1st/laravel-easemob& ...

  7. express node 框架介绍

    开篇先声明一个重点: 就是论文件模块的重要性,之前我一直以为 fs 模块不重要,后来遇到了问题,才发现我之前的自以为是是多么愚蠢的一件事,我现在知道了 fs 模块的重要性 fs 模块:用于对文件的操作 ...

  8. Quartz.Net任务调度总结

    Quartz.Net使用经验总结: 学习参考的例子不错,分享一下: (1)https://www.cnblogs.com/jys509/p/4628926.html,该博文介绍比较全面 (2)http ...

  9. [C#菜鸟]C# Hook (二) 常用钩子的类型

    ; //监视和记录输入事件.安装一个挂钩处理过程,对寄送至系统消息队列的输入消息进行纪录 ; //回放用WH_JOURNALRECORD记录事件 ; //键盘钩子,键盘触发消息.WM_KEYUP或WM ...

  10. 汽车Lin总线特点

    串行通信:线间干扰小,节省线束,传输距离长 单线传输:增强的ISO 9141 (ISO 15765-1),总线电压基于VBAT 最高速率:20kbit/s 单主多从结构,无需仲裁:主节点同时包含主任务 ...