使用 jmock 进行模拟时 Quarkus 测试失败导致 "No code generation strategy available"

Quarkus tests fail while doing mocking with jmock resulting in "No code generation strategy available"

当 运行结合 jmock 测试我的 Quarkus 时,我 运行 进入:

java.lang.IllegalStateException: No code generation strategy available

这是我设置 jmock 的方式:

@QuarkusTest
@Tag("integration")
class MyServiceTest {
    @RegisterExtension
    JUnit5Mockery mockery = new JUnit5Mockery() {
        {
            setImposteriser(ByteBuddyClassImposteriser.INSTANCE);
            setThreadingPolicy(new Synchroniser());
        }
    };

更糟糕的是:这一切都可以在命令行上运行,但不能在 Eclipse 中运行。

这是由于 JRE/JDK Eclipse select 对您的测试 运行。这些测试应该 运行 仅使用 JDK,大多数 Eclipse 版本附带的 JRE 将不提供服务。 所以:安装一个完整的 JDK(例如,通过使用 sdkman)并指定 & select 到 运行 您在 Eclipse 首选项的这一部分中的测试: