gpt4 book ai didi

java - 如何使用maven仅导出JUNIT文件?

转载 作者:行者123 更新时间:2023-12-01 15:00:24 25 4
gpt4 key购买 nike

我想通过运行应用程序的所有 junit 测试来在测试服务器上测试已编译的 jar 文件(我们构建的 RPM 的一部分)。原始应用程序 jar 不包含 junit 测试,因此我只想将 junit 测试导出到它们自己的 jar 文件中,并通过将应用程序和 junit jar 文件传递​​给 testrunner 来运行测试。

不幸的是,Junit 测试使用了一些从我的 maven pom.xml 中列出的 jar 文件导入的辅助类。当我尝试使用常规导出 -> jar 文件方法通过 eclipse 导出 junit jar 文件时,我得到了 junit 测试;但不是测试所依赖的额外 Maven 资源。我不太熟悉 maven,但我知道我可以使用 maven-assemble-plugin 插件导出整个应用程序。但是,我不知道如何仅导出 junit 测试(和相关资源)而不导出所有内容。显然,为了确保正确测试应用程序 jar,我想确保我的 junit jar 不包含应用程序 jar 中已包含的任何资源。

任何人都可以帮助我使用语法来仅导出 src/test 文件夹中的内容及其资源吗?我们将来可能会为许多不同的 RPM 执行此过程,并且我理想地寻找一种可以由部署团队在任何 future RPM 上完成的方法,但部署的个人可能比我自己拥有更少的 Java/Maven 专业知识。因此,理想情况下,我正在寻找最容易教授/可重复的方法。不太确定如何制作出这样的“白痴证明”。

谢谢。

最佳答案

我对你实际想做的事情有点困惑,但无论如何,事情就这样了。

您可以创建a test jar with the jar plugin作为第一个选择。

第二个选项是只拥有一个单独的模块,其中包含测试并运行它的测试,并可能在那里创建一个测试 jar。

然而,我真正的想法是为什么不运行已经完成编译和测试执行的正常构建。您实际上还需要什么?

更新:在您澄清之后,我建议设置一个包含 junit 测试作为源的 Maven 项目。如果您解压 rpm,将 jar 放入 Maven 存储库并声明对其的依赖项,您可以使用该 jar 运行构建,并且测试将针对类路径上的任何内容(包括 rpm 中的 jar)执行...

关于java - 如何使用maven仅导出JUNIT文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13734182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com