Idea 启动项目报错 failed to create jvm:jvm path url 或Could not reserve enough space for xxxxKB object heap

简介: Idea 启动项目报错 failed to create jvm:jvm path url 或Could not reserve enough space for xxxxKB object heap

Idea 启动项目报错 failed to create jvm:jvm path url 或Could not reserve enough space for xxxxKB object heap 终极解决方案

新老版本IDEA都有这样的问题。

当我们项目设置了JVM大小 -Xmx4096m ,但是配置文件中不够大就会产生这样的问题。当然你可能没有这样的设置,同样导致无法启动。

  • 配置文件:
    用户目录下:C:\Users\名字.IntelliJIdea2019.3\config 路径下生成一个文件:idea64.exe.vmoptions
    安装目录下:bin 路径下同样会有idea64.exe.vmoptions

例如这篇博客(https://blog.csdn.net/suhang1992/article/details/105694905)中提到的,删除配置文件,能解决大部分人的问题。

我们都知道 -Xmx4096m 设置了应用JVM大小,可能是我们就需要这么大,那怎么调整配置文件呢?打开这两个文件,可以看到格式大部分都如下:

-Xms128m
-Xmx4096m
-XX:ReservedCodeCacheSize=240m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-XX:CICompilerCount=2
-Dsun.io.useCanonPrefixCache=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Djdk.attach.allowAttachSelf=true
-Dkotlinx.coroutines.debug=off
-Djdk.module.illegalAccess.silent=true
-Dawt.useSystemAAFontSettings=lcd
-Dsun.java2d.renderer=sun.java2d.marlin.MarlinRenderingEngine
-Dsun.tools.attach.tmp.only=true

具体属性什么意思我就不多解释了,我们这边要调整的有-XX:ReservedCodeCacheSize=240m,这个值需要足够大。如果该值过小,可能还会导致IDEA启动不了,报这样的错:

两者的问题都一样,内存声明不够大,配置加大即可。

当然,启动项目报错还要考虑编译器的JVM内存大小:

无论是gradle还是maven,都有这样的配置。

目录
相关文章
|
8月前
|
JavaScript 前端开发 Java
Idea启动SpringBoot程序报错:Veb server failed to start. Port 8082 was already in use;端口冲突的原理与解决方案
本文解决了Idea启动SpringBoot程序报错:Veb server failed to start. Port 8082 was already in use的问题,并通过介绍端口的使用原理和操作系统的端口管理机制,可以更有效地解决端口冲突问题,并确保Web服务器能够顺利启动和运行。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
IDEA创建项目失败提示 Failed to create directory 或 “项目初始化失败”
文章解释了IDEA创建项目失败提示“Failed to create directory”或“项目初始化失败”的原因通常是由于IDEA对目标文件夹没有操作权限,并建议更换一个有权限的文件夹来创建项目。
1476 2
IDEA创建项目失败提示 Failed to create directory 或 “项目初始化失败”
|
Java Spring
成功解决Initialization failed for ‘https://start.spring.io‘ Please check URL, network and proxy settings
这篇文章提供了解决Spring Initializr网站初始化失败问题的方法,包括检查URL、网络和代理设置。
成功解决Initialization failed for ‘https://start.spring.io‘ Please check URL, network and proxy settings
|
Java 应用服务中间件 Spring
IDEA 工具 启动 spring boot 的 main 方法报错。已解决
IDEA 工具 启动 spring boot 的 main 方法报错。已解决
370 4
|
开发工具 git
成功解决 IDEA 2020 版本 代码报错不提示的几种方案
这篇文章提供了几种解决IntelliJ IDEA 2020版本中代码报错不提示问题的方案,包括通过修改文件夹权限、暂存本地更改后进行git pull,以及在git pull后应用暂存的更改并提交代码到远程仓库的方法。
|
开发工具 Android开发 git
解决Idea报错出现Git is not installed
解决Idea报错出现Git is not installed
4565 2
|
Ubuntu
Ubuntu22.04,AOSP编译报错: libncurses.so.5: cannot open shared object file: No such file
本文描述了在Ubuntu 22.04系统上编译AOSP时遇到的`libncurses.so.5`缺失错误,并提供了通过安装相应库解决该问题的步骤。
2448 0
|
6月前
|
Arthas 存储 算法
深入理解JVM,包含字节码文件,内存结构,垃圾回收,类的声明周期,类加载器
JVM全称是Java Virtual Machine-Java虚拟机JVM作用:本质上是一个运行在计算机上的程序,职责是运行Java字节码文件,编译为机器码交由计算机运行类的生命周期概述:类的生命周期描述了一个类加载,使用,卸载的整个过类的生命周期阶段:类的声明周期主要分为五个阶段:加载->连接->初始化->使用->卸载,其中连接中分为三个小阶段验证->准备->解析类加载器的定义:JVM提供类加载器给Java程序去获取类和接口字节码数据类加载器的作用:类加载器接受字节码文件。
594 55
|
27天前
|
存储 缓存 Java
我们来说一说 JVM 的内存模型
我是小假 期待与你的下一次相遇 ~
179 4
|
1月前
|
存储 缓存 算法
深入理解JVM《JVM内存区域详解 - 世界的基石》
Java代码从编译到执行需经javac编译为.class字节码,再由JVM加载运行。JVM内存分为线程私有(程序计数器、虚拟机栈、本地方法栈)和线程共享(堆、方法区)区域,其中堆是GC主战场,方法区在JDK 8+演变为使用本地内存的元空间,直接内存则用于提升NIO性能,但可能引发OOM。

热门文章

最新文章