Maven 构建 & 项目测试

简介: 在本节中,我们将学习如何使用Maven构建和测试Java应用。在C:/MVN/consumerBanking项目中,pom.xml文件已配置JUnit为测试框架。默认包含源码和测试文件。通过命令行切换到该项目目录,执行`mvn clean package`进行构建。Maven依次执行清理、打包任务,生成`consumerBanking-1.0-SNAPSHOT.jar`,测试报告位于`surefire-reports`文件夹。Maven负责编译源码及运行测试用例,最终创建项目包。运行jar文件,显示"Hello World!"。

Maven 构建 & 项目测试

在上一章节中我们学会了如何使用 Maven 创建 Java 应用。接下来我们要学习如何构建和测试这个项目。

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


4.0.0
com.companyname.bank
consumerBanking
jar
1.0-SNAPSHOT
consumerBanking
http://maven.apache.org


junit
junit
3.8.1
test



从以上 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!

相关文章
|
Kubernetes 安全 网络协议
【K8S系列】深入解析k8s网络插件—Calico
【K8S系列】深入解析k8s网络插件—Calico
4767 0
|
5月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
627 87
|
5月前
|
Ubuntu Linux 开发者
常用的Docker命令:docker_cmd_sheet
以上就是一些常用的Docker命令,希望能帮助你更好地驾驭这个强大的工具。记住,Docker就像是一个魔法咒语,只有真正理解和熟练使用,才能发挥出它的最大魔力。
128 22
DeepSeek + Xmind,1分钟自动把pdf/word文档转成思维导图
DeepSeek与Xmind结合,1分钟将PDF、Word文档转换为思维导图。只需四步:上传文档至DeepSeek,请求转换为Markdown格式,保存文件并修改后缀为.md,最后导入Xmind生成思维导图。轻松驾驭复杂文档,适用于学习笔记、工作报告、项目规划等场景,大幅提升效率!
|
7月前
|
新零售 人工智能 自然语言处理
课时18:阿里云新零售+电商解决方案:让生意更容易
阿里云新零售+电商解决方案助力企业在互联网时代提升消费者体验与用户忠诚度,通过技术创新实现线上线下融合。银泰、贝贝等企业借助阿里云的计算能力、数据整合和智能服务,打造个性化购物体验,应对市场挑战,推动业务高效增长。
138 0
|
9月前
|
Linux
CentOs9 yum源出现404问题
CentOs9-stream yum源出现404问题
|
存储 编译器 程序员
C语言中的表达式:深入理解与应用
C语言中的表达式:深入理解与应用
656 4
|
监控 Java Nacos
dynamic-tp动态线程池
1)如果要实现一个动态线程池,首先需要考虑的是将线程池的相关配置信息外置。这样出现问题的时候,能够基于配置修改,实现热部署。修改配置后,就能生效。因此,可以考虑的配置方式有多种:nacos、apollo、zookeeper、consul、etcd等。 2)如果线程池出现问题或者完成修改后,能够基于监控的信息,进行通知和告警。这样就需要考虑通知和告警的方式的多样性:比如基于钉钉、微信、飞书、电子邮件等渠道进行通知和告警。
2464 0
dynamic-tp动态线程池
|
前端开发
前端学习笔记202306学习笔记第五十一天-工厂模式1
前端学习笔记202306学习笔记第五十一天-工厂模式1
109 0