在IntelliJ IDEA中开发Java程序时,如果项目体量较大或需要处理大量数据,默认的堆内存往往不够用,容易导致程序抛出OutOfMemoryError。我们可以通过多种方式为Java应用分配更多堆内存,从而保障运行与调试的稳定。

通过运行配置设置堆内存
最常见的方式是修改程序的运行或调试配置。打开 Run 菜单中的 Edit Configurations,在对应应用的 Configuration 选项卡中找到 VM options,填入如下参数即可:
-Xms512m -Xmx2048m -XX:MaxMetaspaceSize=512m
其中 -Xmx 用于指定最大堆内存,例如 2048m 表示 2GB;-Xms 指定初始堆内存。修改后保存并重新运行应用即可生效。
在构建工具中配置内存
如果使用 Maven 或 Gradle,也可以在构建脚本中设置测试及运行任务的内存。例如 Maven 的 surefire 插件配置如下:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Xmx1024m</argLine>
</configuration>
</plugin>
</plugins>
</build>Gradle 则可在 build.gradle 中通过 test 任务设置:
test {
maxHeapSize = "1g"
}修改IDE与JDK默认参数
若希望所有新建运行配置都默认使用更大堆内存,可修改 IDEA 的默认运行模板,或在启动 IDEA 的 idea64.exe.vmoptions 文件中调整其自身占用。对于 JDK 级别的统一默认值,可在系统环境变量中设置 _JAVA_OPTIONS:
export _JAVA_OPTIONS="-Xmx2048m"
验证内存配置
启动应用后,可以在代码里打印运行时内存信息来确认配置是否生效:
public class MemoryCheck {
public static void main(String[] args) {
Runtime rt = Runtime.getRuntime();
// 最大可用堆内存,单位为字节
long max = rt.maxMemory();
System.out.println("Max Heap: " + (max / 1024 / 1024) + " MB");
}
}通过上述几种方式,你可以按需为 IntelliJ 中的 Java 应用灵活分配更多堆内存,显著减少内存溢出风险。
IntelliJ_IDEAJavaheap_memory修改时间:2026-07-26 22:57:17