gpt4 book ai didi

unit-testing - 使用 Maven 插件测试工具 : 测试 Mojos 的默认值和表达式

转载 作者:行者123 更新时间:2023-12-03 14:42:27 25 4
gpt4 key购买 nike

我在使用 Maven 插件测试工具 (2.0-alpha1) 时遇到问题:当我想测试我的 Mojo 时,参数的默认值和表达式不适用。
我有以下参数:

/**
* <p>The output file to write the settings to.</p>
*
* @parameter default-value="${project.build.directory}/myProperties.properties" expression="${properties.file}"
*/

private String file;

当我运行单元测试时,此属性始终为空。我试图注入(inject)一个返回 ${project.build.directory} 的 MavenProjectStub成功,但这不适用于我的 Mojo 参数。

有没有办法启用默认值和表达式,如 ${project.build.directory}测试期间在我的 Mojos 里面?

最佳答案

所以它看起来像 they added lookupConfiguredMojo for just this use case .我花了一段时间才弄清楚如何调用它,因为您需要正确配置的 MavenProject使用它。这对我有用:

File pomFile = ...

MavenExecutionRequest executionRequest = new DefaultMavenExecutionRequest();
ProjectBuildingRequest buildingRequest = executionRequest.getProjectBuildingRequest();
ProjectBuilder projectBuilder = this.lookup(ProjectBuilder.class);
MavenProject project = projectBuilder.build(pomFile, buildingRequest).getProject();

MyMojo mojo = (MyMojo) this.lookupConfiguredMojo(project, "my-goal");
...

关于unit-testing - 使用 Maven 插件测试工具 : 测试 Mojos 的默认值和表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9496534/

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