Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 运行自定义PIT变异引擎插件时出现的问题_Java_Maven_Classpath_Mutation Testing_Pitest - Fatal编程技术网

Java 运行自定义PIT变异引擎插件时出现的问题

Java 运行自定义PIT变异引擎插件时出现的问题,java,maven,classpath,mutation-testing,pitest,Java,Maven,Classpath,Mutation Testing,Pitest,我正在为编写一个定制的变异引擎,但我在找到它时遇到了麻烦。我的猜测是,在使用项目运行PIT时,我没有将带有自己引擎的包放在正确的类路径中。为了测试我正在使用的引擎,我正在使用Maven插件运行PIT。在pom.xml文件中,我在additionalClassPathElements标记中写入了自定义引擎的名称甚至其路径。似乎什么都不管用。PIT一直说找不到引擎。哪种方法是安全验证是否存在类路径问题的最佳方法?或者哪种方法最简单,可以让PIT找到我的软件包并能够使用插件 提前感谢,这个问题发布已经

我正在为编写一个定制的变异引擎,但我在找到它时遇到了麻烦。我的猜测是,在使用项目运行PIT时,我没有将带有自己引擎的包放在正确的类路径中。为了测试我正在使用的引擎,我正在使用Maven插件运行PIT。在pom.xml文件中,我在additionalClassPathElements标记中写入了自定义引擎的名称甚至其路径。似乎什么都不管用。PIT一直说找不到引擎。哪种方法是安全验证是否存在类路径问题的最佳方法?或者哪种方法最简单,可以让PIT找到我的软件包并能够使用插件


提前感谢,

这个问题发布已经有一段时间了。 由于PIT搜索外部组件的方式,未找到插件。该问题已在版本1.2.1中解决。目前的版本是1.4.9

您的插件应该包含一个声明以下字段的
META\u INF/MANIFEST.MF
实现供应商Id
实现标题
。在Maven项目中,
groupId
将转到前者,
artifactId
转到后者,因此您实际上不需要做任何特殊的事情

最初,PIT使用的是
实施供应商
,默认情况下,该供应商将包含在
pom.xml
中声明的组织名称。在我的例子中,这个值与
groupId
不同,因此PIT无法找到插件


正如在评论中所说的,它提供了关于如何创建自己的插件的好例子。还有另外两个例子可能也会有所帮助。

该工具的作者向我指出,该工具似乎有详尽的例子和解释来构建自定义插件。