【问题标题】:Intellij JBoss - Initial heap size set to a larger value than the maximum heap sizeIntellij JBoss - 初始堆大小设置为大于最大堆大小的值
【发布时间】:2020-04-15 16:13:22
【问题描述】:

我正在使用 IntelliJ 2020.1 Ultimate 并且有一个我想从 IntelliJ 运行的 JBoss 7.0.2 服务器。

我已将其添加为配置:

但是当我尝试启动服务器时,出现以下错误:

IDEA.app/Contents/plugins/Kotlin/lib/jps/kotlin-jps-plugin.jar:/Applications/IntelliJ IDEA.app/Contents/plugins/Kotlin/lib/kotlin-stdlib.jar:/Applications/IntelliJ IDEA.app/Contents/plugins/Kotlin/lib/kotlin-reflect.jar:/Applications/IntelliJ IDEA.app/Contents/plugins/Kotlin/lib/kotlin-plugin.jar" org.jetbrains.jps.cmdline.BuildMain 127.0.0.1 64088 4a7ed3b5-cfb6-4196-b997-396c16d8c06f /Users/richardmarais/Library/Caches/JetBrains/IntelliJIdea2020.1/compile-server 拿起JAVA_TOOL_OPTIONS:-Dhttps.protocols=TLSv1.2 -Xmx2048m -XX:MaxPermSize=1024m -Xms2048m OpenJDK 64 位服务器虚拟机警告:忽略选项 MaxPermSize;在 8.0 中删除了支持 发生错误 在 VM 初始化期间初始堆大小设置为较大的值 超过最大堆大小

我的idea.vmoptions 是默认值:

-Xms128m
-Xmx2048m
-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
-XX:+UseCompressedOops
-Dfile.encoding=UTF-8

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof

问题

你知道我可以如何修复上述错误以启动 JBoss 吗?

【问题讨论】:

  • 看起来最小堆等于最大值。尝试降低最小值 (Xms),反之亦然
  • @sigur,感谢您的评论。我在哪里设置这个?在idea.vmoptions 中(但为什么默认值会出错)?还是在环境变量JAVA_TOOL_OPTIONS?或在 IntelliJ Jboss 配置中 VM Options?
  • 如果我:export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8 -Dhttps.protocols=TLSv1.2 -Xmx2048m -XX:MaxPermSize=1024m -Xms1024m",日志仍然显示:Picked up JAVA_TOOL_OPTIONS: -Dhttps.protocols=TLSv1.2 -Xmx2048m -XX:MaxPermSize=1024m -Xms2048m。所以我不确定这是在哪里设置的?
  • 我可以将JAVA_TOOL_OPTIONSopen -a TextEdit.app ~/.bash_profile 更新为-Xmx4096m -XX:MaxPermSize=1024m -Xms2048m,但我仍然收到错误消息。

标签: java intellij-idea jboss jvm


【解决方案1】:

您无需设置任何全局环境变量来修补 VM 选项。

取消设置 JAVA_TOOL_OPTIONS 并在服务器的运行/调试配置中指定正确的 VM 选项:

-Xms256m -Xmx2048m -XX:MaxPermSize=512m

对于任何项目来说应该绰绰有余。我怀疑你真的需要 5GB 的初始堆大小。

另请注意,IntelliJ IDEA .vmoptions 不会影响您从 IDE 启动的应用程序的选项。

【讨论】:

    【解决方案2】:

    我通过这样做解决了这个问题。

    open -a TextEdit.app ~/.bash_profile
    

    然后:

    export JAVA_TOOL_OPTIONS="-Dhttps.protocols=TLSv1.2 -Xmx4096m -Xms128m"
    

    【讨论】:

      猜你喜欢
      • 2018-04-14
      • 1970-01-01
      • 2010-12-29
      • 2019-03-21
      • 1970-01-01
      • 2012-09-19
      • 1970-01-01
      • 1970-01-01
      • 2013-11-12
      相关资源
      最近更新 更多