>>分享流行的Java框架以及开源软件,对孙卫琴的《精通Spring》、《Spring Cloud Alibaba微服务开发零基础入门到实操》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 26467 个阅读者 刷新本主题
 * 贴子主题:  Maven 构建和 项目测试 回复文章 点赞(0)  收藏  
作者:sunshine    发表时间:2019-08-14 14:32:17     消息  查看  搜索  好友  邮件  复制  引用

  

Maven 构建 & 项目测试

     本文介绍如何用Maven构建和测试Java项目。

     进入 C:/MVN 文件夹下,打开 consumerBanking 文件夹。你将看到有一个 pom.xml 文件,代码如下:

< 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/maven-v4_0_0.xsd " >
   < modelVersion > 4.0.0 </ modelVersion >
   < groupId > com.companyname.bank </ groupId >
   < artifactId > consumerBanking </ artifactId >
   < packaging > jar </ packaging >
   < version > 1.0-SNAPSHOT </ version >
   < name > consumerBanking </ name >
   < url > http://maven.apache.org </ url >
   < dependencies >
     < dependency >
       < groupId > junit </ groupId >
       < artifactId > junit </ artifactId >
       < version > 3.8.1 </ version >
       < scope > test </ scope >
     </ dependency >
   </ dependencies >
</ project >

       从以上 xml代码中,可知 Maven 已经添加了 JUnit 作为测试框架。

       默认情况下 Maven 添加了一个源码文件 C:\MVN\consumerBanking\src\main\java\com\companyname\bank\App.java 和一个测试文件 C:\MVN\consumerBanking\src\test\java\com\companyname\bank\AppTest.java

       打开命令控制台,跳转到 C:\MVN\consumerBanking 目录下,并执行以下 mvn 命令开始构建项目:

C:\MVN\consumerBanking>mvn clean package

[INFO] Scanning for projects...

[INFO] -------------------------------------------------------------------

[INFO] Building consumerBanking

[INFO]    task-segment: [clean, package]

[INFO] -------------------------------------------------------------------

[INFO] [clean:clean {execution: default-clean}]

[INFO] Deleting directory C:\MVN\consumerBanking\target

...

...

...

[INFO] [jar:jar {execution: default-jar}]

[INFO] Building jar: C:\MVN\consumerBanking\target\

consumerBanking-1.0-SNAPSHOT.jar

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESSFUL

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 2 seconds

[INFO] Finished at: Tue Jul 10 16:52:18 IST 2012

[INFO] Final Memory: 16M/89M

[INFO] ------------------------------------------------------------------------

     执行完后,我们已经构建了自己的项目并创建了最终的 jar 文件,下面是要学习的关键概念:            
  • 我们给了 maven 两个目标,首先清理目标目录(clean),然后打包项目构建的输出为 jar(package)文件。
  • 打包好的 jar 文件可以在 consumerBanking\target 中获得,名称为 consumerBanking-1.0-SNAPSHOT.jar。
  • 测试报告存放在 consumerBanking\target\surefire-reports 文件夹中。
  • Maven 编译源码文件,以及测试源码文件。
  • 接着 Maven 运行测试用例。
  • 最后 Maven 创建项目包。
     C:\MVN\consumerBanking\target\classes>java com.companyname.bank.App

     你可以看到结果:

                 Hello World!      

            添加 Java 源文件

     接下来我们看看如何添加其他的 Java 文件到项目中。打开 C:\MVN\consumerBanking\src\main\java\com\companyname\bank 文件夹,在其中创建 Util 类 Util.java。              

Util.java

package   com . companyname . bank ;

public   class   Util  
{
    public   static   void   printMessage ( String   message ) {
        System . out . println ( message ) ;
    }
}

                     更新 App 类来使用 Util 类:              

App.java

package   com . companyname . bank ;

/* *
* Hello world!
*
  */

public   class   App  
{
     public   static   void   main (   String [ ]   args   )
     {
         Util . printMessage ( " Hello World! " ) ;
     }
}

    现在打开命令控制台,跳转到 C:\MVN\consumerBanking 目录下,并执行下面的 mvn 命令。

                 C:\MVN\consumerBanking>mvn clean compile

     在 Maven 构建成功之后,跳转到 C:\MVN\consumerBanking\target\classes 目录下,并执行下面的 java 命令。

                 C:\MVN\consumerBanking\target\classes>java -cp . com.companyname.bank.App

     你可以看到结果:

                 Hello World!







程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2020-02-22 09:49:55 重新编辑]
  Java面向对象编程-->输入与输出(下)
  JavaWeb开发-->Servlet技术详解(Ⅲ)
  JSP与Hibernate开发-->JPA API的高级用法
  Java网络编程-->对象的序列化与反序列化
  精通Spring-->通过Axios访问服务器
  Vue3开发-->Vue组件开发高级技术
  面试官问什么是Spring循环依赖,该如何回答?
  循序渐进,阿里架构师看完都赞叹的Redis分布式锁原理分析
  Spring事务容易掉入的坑
  Spring MVC异常处理机制
  @SessionAttributes的用法
  @ModelAttribute注解用法详解
  Redis solr一二事 - 在spring中使用jedis 连接调试单机redi...
  Spring Cloud构建微服务架构的分布式配置中心
  聊聊Spring Cloud版本的那些事儿
  SpringCloud Gateway-整体流程
  Spring Security中使用的责任链模式
  深入理解Mybatis一级缓存
  再谈响应式流(结合制奶厂业务的案例)
  RESTful 架构详解
  大话微服务」深入聊聊SpringCloud之客户端负载均衡机制
  更多...
 IPIP: 已设置保密
楼主      
该用户目前不在线 nihaota 
  
威望: 0
级别: 新手上路
魅力: 1315
经验: 1315
现金: 2944
发文章数: 243
注册时间: 0001-01-01
 消息  查看  搜索  好友  邮件  复制  引用


讨债公司
发文章时间 2022-10-28 21:09:36
 IPIP: 已设置保密 1 楼     
1页 1条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。