Junit启动报错Could not create the Java Virtual Machine

记录一下在实际应用中遇到的一个超级坑的错误。

背景

在使用Junit + mockito做单元测试的时候,运行单元测试报错:

Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Unrecoginzed option: --add-opens.

在网上查了各种资料。但是没有特别符合的错误,大部分的回答是修改分配的jvm内存。但试过了之后还是没能够解决我的问题。

然后就回到了项目本身,报错提示不能识别的选项:--add-opens,是否是本身项目配置了jvm启动参数的原因?于是我顺着这个思路往下进行。果然在项目的pom文件中找到了一处配置

<build>
    <plugins>
    	<plugin>
            <artifactId>xxx</artifactId>
            <version>xxx</version>
            <configuration>
            	<argLine>--add-opens xxx</argLine>
            </configuration>
        </plugin>
    </plugins>
</build>

和单元测试启动时控制台打印的参数一致。会不会把这里改了就行了?

当我把这个配置注释掉,重新编译启动时发现还是没有用。这下没招了。

解决方式

这下一点思路都没有了。于是我去看项目配置,在里面找到了一项:

在之前百度的时候有几篇文章说把argLine选项勾上,当时我默认就是选中的就没管,这下看到这个配置项,它会不会就是启动参数的配置呢?抱着试试的心态把它取消勾选,然后重新启动单元测试。过了

总结

这个问题确实有点超出了我的能力范围。好在运气比较好。还要继续努力啊😄


持续更新~

posted @   杨欢喜e  阅读(826)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示