首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在Maven测试阶段结束时执行代码的推荐方法是什么?

在Maven测试阶段结束时执行代码的推荐方法是什么?
EN

Stack Overflow用户
提问于 2016-03-31 11:57:14
回答 1查看 421关注 0票数 1

我有一些JUnit测试,它们在test阶段并行执行,每个测试输出一个.json文件,我想调用一个定制的.json方法,在所有测试完成后对这些文件进行一些聚合和后处理。

integration-test阶段之后是默认Maven生命周期中的post-integration-test阶段,但是测试阶段之后没有post-test阶段,为此我不想滥用其他阶段。

问题:在test阶段结束时对结果进行后处理的推荐方法是什么?

EN

回答 1

Stack Overflow用户

发布于 2016-04-02 12:56:34

正如在另一篇这样的文章中所描述的那样,Maven中没有post-test阶段是有原因的(主要是单元测试就是单元测试)。

但是,在您的情况下,您不需要创建额外的Maven插件,这可能解决了这个问题,但也在维护、测试、共享方面增加了额外的复杂性。

由于Java方法中已经有了所需的代码--正如问题中提到的--使用Exec插件及其java目标可能更有意义。

因此,您可以简单地添加到POM中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.1.1</version>
    <executions>
        <execution>
            <phase>test</phase> <!-- executed as post-test, that is, after Surefire default execution -->
            <goals>
                <goal>java</goal>
            </goals>
            <configuration>
                <mainClass>com.sample.JsonFileAggregator</mainClass> <!-- your existing Java code, wrapped in a main -->
                <arguments>
                    <argument>${project.build.directory}</argument> <!-- directory from where to load json files -->
                </arguments>
                <classpathScope>test</classpathScope> <!-- if your Java code is in test scope -->
            </configuration>
        </execution>
    </executions>
</plugin>

也就是说,将其执行绑定到test阶段,Maven将在任何默认绑定之后(因此在默认的Maven强制执行之后)执行它,并以post-test的形式执行。

然后,可以通过巧尽心思构建的Java (如果不存在的话)调用现有的Java代码,并可能将参数传递给它(例如,从哪里加载.json文件的目录,在上面的片段中,通过其标准属性${project.build.directory}target文件夹)。此外,正如片段中提到的,您的test代码可能位于src/test/java作用域(即src/test/java下),因此,为了使其可见,您还需要相应地配置classpathScope

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36342574

复制
相关文章
使用Termux在Android上运行SSH服务器
借助出色的Termux终端仿真器应用程序,您可以在Android上运行SSH服务器。
用户5005176
2021/08/10
4.6K0
linux服务器ssh文件传输—scp使用指南
这个问题可烦恼很久了,之前用ftp传输文件相当麻烦,但是这次使用打ssh,则简单有效。
十四君
2019/11/27
2.2K0
在Windows上使用PuTTY进行SSH连接
PuTTY是一个用于Windows和UNIX系统的免费开源SSH客户端。它可以轻松连接到运行SSH守护程序的任何服务器,因此您可以像登录到远程系统上的控制台会话一样工作。
文艺复兴
2018/09/10
21.6K0
在Windows上使用PuTTY进行SSH连接
在Linux服务器上安装Web SSH--SSHwifty的部署和使用
SSH,其全称是Secure Shell(安全外壳协议)是一种加密的网络传输协议。SSH最常见的用途是远程登录系统,人们通常利用SSH来传输命令行界面和远程执行命令,即:远程Terminal登录。
Mintimate
2021/06/01
11K0
在Linux服务器上安装Web SSH--SSHwifty的部署和使用
我可以在不source脚本的情况下将变量从Bash脚本导出到环境中吗
有没有一种方法可以通过只执行 export.bash 而不 source 它获取 $VAR?
程序熵
2023/09/25
2310
我可以在不source脚本的情况下将变量从Bash脚本导出到环境中吗
在Mac上使用ssh-key免密码登录服务器
从很早之前开始,在搭建测试服务器的时候,就不停的谷歌怎么免密登录服务器,每次配置好免密登录后,到搭建新的服务器时,又忘记了具体的命令,所以决定把这个方法记下来,方便之后日后查找。
Originalee
2018/08/30
5K0
Linux环境下SVN代码库从旧服务器迁移到新服务器的步骤详解
曾几何时我也是个能糊弄就糊弄的小白,不知道是年级大了还是其他什么别的原因所致,遇到问题不在敷衍,总想着解决问题,就好比这次,因为旧主机磁盘已满想着续费不划算就趁着阿里搞活动新购一台,但是之前的数据多而杂且项目带有SVN库,如果是简简单单迁移还好说,毕竟备份恢复就完成了,这次我想着能不能把SVN也备份到新服务器直接使用,最终在我测试了36个小时之后得到的答案是【可以】,不然也不会有这篇文章了吧,哈哈~可能是因为比较笨,用时较长,哎反正不管怎么说这次SVN的备份和迁移算是尘埃落地,以下是我此次备份和迁移的过程。
李洋博客
2023/11/17
1.7K0
Linux环境下SVN代码库从旧服务器迁移到新服务器的步骤详解
在 Linux 上保护 SSH 服务器连接的 8 种方法
本周赠书:一文理解分布式开发中的服务治理 来源:https://www.linuxmi.com/secure-ssh-connections-linux.html SSH 是一种广泛使用的协议,用于安全地访问 Linux 服务器。大多数用户使用默认设置的 SSH 连接来连接到远程服务器。但是,不安全的默认配置也会带来各种安全风险。 具有开放 SSH 访问权限的服务器的 root 帐户可能存在风险。尤其是如果您使用的是公共 IP 地址,则破解 root 密码要容易得多。因此,有必要了解 SSH 安全性。 这是
程序猿DD
2022/07/27
1.2K0
在 Linux 上保护 SSH 服务器连接的 8 种方法
工位上的Python——简单SSH服务器
最近在看python网络方面的知识,发现使用socket编写一些小的服务器真是太方便了,简单几行代码就能实现一个服务器,真是高大上呀,废话少说,直接上代码:
py3study
2020/01/09
1.3K0
在新服务器上搭建wordpress网站
0.首先在购置好服务器后,选一个常用的系统,一般是ubuntu 14.04 不建议用一键安装包,还是自己走一边流程熟悉点。
十四君
2019/11/26
4.1K0
在本地服务器上使用Python脚本处理HTML表单
要在本地服务器上使用 Python 处理 HTML 表单,可以使用 Flask 框架,这是一个轻量级的 web 框架,特别适合快速构建和处理 HTTP 请求。
华科云商小徐
2024/09/09
1130
使用SSH密钥在Git服务器上免密码提交代码
在使用Git进行版本控制时,每次提交代码时都要求输入用户名和密码,这对于频繁提交的开发者来说会显得十分繁琐。通过配置SSH密钥,可以实现免密码提交代码,既提升了工作效率,也增强了安全性。本文将介绍如何在Git服务器上使用SSH密钥进行身份验证,替代每次输入账户密码的方式。
alanzeng
2025/01/14
1000
MySql在服务器上使用问题的总结
服务器是Windows Server 2012,我自己安装了一个MySql数据库,然后一个Web程序和客户端程序都想访问数据库,但是遇到一堆问题。主要是我仍然坚持使用.net 2.0,挂接MySql.Data 6.7.4版本。解决后记录一下
用户1075292
2023/05/03
1.1K0
MySql在服务器上使用问题的总结
Navicat 使用 SSH 方式连接腾讯云服务器上的 MySQL
在配置完服务器上的 MySQL 后,在准备使用 Navicat 直接连接 MySQL。这时发现无法使用 Navicat 直接通过公网 IP 连接 MySQL。
求和小熊猫
2020/11/25
13.9K0
Navicat 使用 SSH 方式连接腾讯云服务器上的 MySQL
在Linux使用Bash脚本命令
tee命令的默认行为是覆盖指定的文件,与>运算符相同。 要将输出附加到文件,请使用-a(--append)选项调用命令:
用户5005176
2021/08/10
2.1K0
在Linux系统中创建SSH服务器别名
如果你经常通过 SSH 访问许多不同的远程系统,这个技巧将为你节省一些时间。你可以通过 SSH 为频繁访问的系统创建 SSH 别名,这样你就不必记住所有不同的用户名、主机名、SSH 端口号和 IP 地址等。此外,它避免了在 SSH 到 Linux 服务器时重复输入相同的用户名、主机名、IP 地址、端口号。
星哥玩云
2022/07/27
4.1K0
在Linux系统中创建SSH服务器别名
新加坡服务器上如何实现自动脚本运行
在新加坡服务器上运行脚本涉及几个关键步骤,包括连接到服务器、上传脚本、配置环境以及实际执行脚本。以下是详细的步骤指南,适用于Linux服务器:
jtti
2024/05/21
1280
4.2 服务器上的 Git - 在服务器上搭建 Git
这里我们将要演示在 Linux 服务器上进行一次基本且简化的安装所需的命令与步骤,当然在 Mac 或 Windows 服务器上同样可以运行这些服务。 事实上,在你的计算机基础架构中建立一个生产环境服务器,将不可避免的使用到不同的安全措施与操作系统工具。但是,希望你能从本节中获得一些必要的知识。
shaonbean
2019/05/26
4K0
在JBOSS服务器上使用Myfaces的JSF实现
JBOSS AS服务器默认使用的JSF实现是SUN的RI,要把他替换成Myfaces需要:
EltonZheng
2021/01/22
8510
服务器小白的我,是如何将 node+mongodb 项目部署在服务器上并进行性能优化的
本文讲解的是:做为前端开发人员,对服务器的了解还是小白的我,是如何一步步将 node+mongodb 项目部署在阿里云 centos 7.3 的服务器上,并进行性能优化,达到页面 1 秒内看到 loading ,3 秒内看到首屏内容的。
夜尽天明
2019/11/13
1.7K0
服务器小白的我,是如何将 node+mongodb 项目部署在服务器上并进行性能优化的

相似问题

检查字符串是否跟在python regex中的特定字符串列表之后

16

Python get字符串紧跟在参数开关之后

30

如何让列跟在特定列之后?

110

Bash脚本-紧跟在特定短语之后的条目

12

使用Xpath选择紧跟在特定节点之后的特定节点

210
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文