问题描述
我试图在测试期间在我的 Spring Boot 应用程序中运行 Blockhound。不幸的是,gradle 没有选择所需的 -XX:+AllowRedeFinitionToAddDeleteMethods
标志。我在运行配置以及 gradle.properties org.gradle.jvmargs=-XX:+AllowRedeFinitionToAddDeleteMethods
中使用 IntelliJ 的 VMoptions 进行了尝试。但错误仍然存在。
解决方法
这行得通吗?
摇篮:
tasks.withType(Test).all {
if (JavaVersion.current().isCompatibleWith(JavaVersion.VERSION_15)) {
jvmArgs += [
"-XX:+AllowRedefinitionToAddDeleteMethods"
]
}
}
行家:
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<configuration>
<argLine>-XX:+AllowRedefinitionToAddDeleteMethods</argLine>
</configuration>
</plugin>
...
</plugins>
还是 JAVA_OPTS? 在 mac/linux 上:
export JAVA_OPTS="-XX:+AllowRedefinitionToAddDeleteMethods"
或 Windows
set JAVA_OPTS="-XX:+AllowRedefinitionToAddDeleteMethods"