如何在IntelliJ IDEA中增大Mock Network下CordApp的堆内存
解决IntelliJ中Corda Mock Network堆内存不足的问题
我之前开发CordApp时也碰到过一模一样的问题!Mock Network是在测试进程内部启动的,常规的节点内存配置或者IDE全局VM设置根本不生效,得针对测试运行配置来调整才行,下面是亲测有效的步骤:
步骤1:打开测试类的专属运行配置
- 在IntelliJ里找到启动Mock Network的测试类,右键点击类名 → 选择「Modify Run Configuration...」
- 或者直接点击顶部工具栏的运行配置下拉框,选择「Edit Configurations...」,再从左侧列表里找到对应的JUnit测试配置
步骤2:给测试配置添加VM内存参数
- 在配置窗口里,找到「VM options」输入框(如果看不到,点击窗口右下角的「Modify options」→ 勾选「Add VM options」)
- 在输入框里填入你需要的堆内存参数,比如要2G内存就写:
-Xmx2048m,需要更大的话可以设-Xmx4G(注意参数格式,不要有多余空格) - 点击「Apply」和「OK」保存配置
步骤3:验证配置是否生效
- 运行测试类,在控制台日志里找类似
Initial heap size ..., maximum heap size ...的内容,确认最大堆内存已经变成你设置的数值 - 也可以在测试代码里加一行验证代码:
System.out.println("Max heap: " + Runtime.getRuntime().maxMemory() / (1024 * 1024) + "MB");,运行后看控制台输出的数值是否符合预期
额外提示:批量测试类的配置技巧
如果项目里有多个测试类都用到Mock Network,可以创建一个JUnit模板配置:
- 打开「Edit Configurations...」→ 点击左上角的「+」→ 选择「JUnit」
- 在模板里预设好VM内存参数,以后新建测试配置时就会自动继承这个设置
内容的提问来源于stack exchange,提问作者Omer Shafiq
相关产品推荐
相关产品推荐

