gpt4 book ai didi

java - 如何在POM文件中指定maven命令行选项?

转载 作者:行者123 更新时间:2023-12-02 13:19:57 25 4
gpt4 key购买 nike

我有一个目标,该目标将始终在某些参数开启的情况下运行。我不想一次又一次地指定它们,并希望将其包含在 POM 文件中,这样即使另一个目标调用该目标,这些参数也会被考虑执行。

这些参数不应位于全局范围内,因为它们仅用于测试范围。

<小时/>

我在 spring-boot 中有一个使用配置文件的代码。如果我使用 -Dspring.profiles.active=TEST 运行测试,则会出现预期结果。因此,要使用 -Dspring.profiles.active=TEST 运行 failsafe:integration-test 目标是必需的。

最佳答案

这里有两个选项:在需要它们的测试中指定 Activity 配置文件:

@RunWith(SpringRunner.class)
@SpringBootTest
@ActiveProfiles("TEST")
public class MyServiceTest {

@Autowired
MyService myService;

@Test
public void testServiceInitialized() throws Exception {
// ...
}

这也允许IDE直接运行测试。

选项二是让故障安全插件知道将该 -D 参数传递给测试:

http://maven.apache.org/surefire/maven-failsafe-plugin/integration-test-mojo.html#argLine

因此,要么设置包含此参数的属性“argLine”,要么配置插件。通过这种方法,这些测试将仅使用 Maven 运行 - 在 IDE 中,您可能必须重现此配置 - 有些聪明的人会自动执行此操作。

如果您还需要告诉 spring boot 启用某些配置文件,则 spring-boot 插件可以直接执行此操作:http://docs.spring.io/spring-boot/docs/current/maven-plugin/examples/run-profiles.html

关于java - 如何在POM文件中指定maven命令行选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43610002/

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