web-dev-qa-db-ja.com

無効な初期ヒープサイズ。 Java仮想マシンを作成できませんでした

次の問題に直面しました。startup.batを使用して手動でTomcatを起動しようとしていますが、結果が表示されないようで、shutdown.batを実行しようとすると、コンソールに次のように表示されます。

 D:\Apache-Tomcat-7.0.35\bin>startup.bat
Using CATALINA_BASE:   "D:\Apache-Tomcat-7.0.35"
Using CATALINA_HOME:   "D:\Apache-Tomcat-7.0.35"
Using CATALINA_TMPDIR: "D:\Apache-Tomcat-7.0.35\temp"
Using JRE_HOME:        "C:\Program Files\Java\jdk1.6.0_31"
Using CLASSPATH:       "D:\Apache-Tomcat-7.0.35\bin\bootstrap.jar;D:\Apache-Tomcat-7.0.35\bin\Tomcat-juli.jar"
D:\Apache-Tomcat-7.0.35\bin>shutdown.bat
Using CATALINA_BASE:   "D:\Apache-Tomcat-7.0.35"
Using CATALINA_HOME:   "D:\Apache-Tomcat-7.0.35"
Using CATALINA_TMPDIR: "D:\Apache-Tomcat-7.0.35\temp"
Using JRE_HOME:        "C:\Program Files\Java\jdk1.6.0_31"
Using CLASSPATH:       "D:\Apache-Tomcat-7.0.35\bin\bootstrap.jar;D:\Apache-Tomcat-7.0.35\bin\Tomcat-juli.jar"
Invalid initial heap size: -Xms256m -Xmx512m -XX:MaxPermSize=256m
Could not create the Java virtual machine.

catalina.batはオリジナルであり、すべてのパスとオプションをチェックしました(つまり、Java_HOME、JRE_HOME、CATALINA_BASE、CATALINA_HOME、CATALINA_TMPDIR)。 Tomcatのバージョンは7.0.35 Java v 1.6

11
John Smith

ここ から正しいパラメーター(Java_OPTS)を取得しました。 setenv.batで設定しました。

1
John Smith

これがあなたの問題ですInvalid initial heap size: -Xms256m -Xmx512m -XX:MaxPermSize=256m

一部のシステム(Windows JREの可能性があります)は、小文字で与えられたXmsおよびXmxの値を理解します。ここで256mと512mは、それぞれ256MBと512MBを示します。

一部のマシン(UbuntuのJDK 1.7)はsmall m for MBを理解できません。 Xms256m -Xmx512mを変更すると、to =>Xms256[〜#〜] m [〜#〜] -Xmx512[〜#〜] m [〜#〜]、動作し始めました。

PS-> IntelliJをUbuntu 15(JDK 1.7)にインストールしているときにこのエラーが発生しました。intelliJの/bin/idea.vmoptionsファイルを編集し、動作しました。

ここにリストがありますXmxおよびXms値-

Java -Xmx4056M -Xms4056M HelloWorld

問題:VMの初期化中にエラーが発生しました、オブジェクトヒープのサイズ+ VMデータが表現可能な最大サイズを超えています

原因:マシンに4GBのメモリがあるため、-Xmsまたは-Xmxのいずれかの値が物理メモリのサイズよりも大きいか、またはそれに近い。

Java -Xmx1056M -Xms2056M HelloWorld

問題:VMの初期化中にエラーが発生しました、指定された互換性のない最小および最大ヒープサイズ

原因:-Xmsの値が-Xmxより高い

Java -Xms2056M HelloWorld

問題:VMの初期化中にエラーが発生しました。オブジェクトヒープ用に十分なスペースを予約できませんでした

原因:-Xmsのみが提供され、-Xmxが提供されていません。タイプミスがあり、-Xmxの代わりに-Xmsを2回指定した場合にも、このエラーが発生します

Java -Xms1024 M -Xmx1024M HelloWorld

問題:VMの初期化中にエラーが発生しました、初期ヒープが小さすぎます

原因:1024からMまでのスペースがある場合、JVMは-Xmsのサイズを1024バイトとしてのみ想定し、JVMが開始するには小さすぎるというエラーを出力します

10
sapy

この問題は、Cassandraを実行しようとしたときに発生しました。

アンインストールJava 32ビットおよびインストールJava 64ビットは、この問題を解決しました。

そして私の場合、理由は-Xmsの前のオプション-javaagent。正しい順序で実行するJava -javaagent:xxx -Xms256mトリックを行いました。

0
BartBiczBoży

Rでディープラーニング用にh2oを初期化するときに同じエラーが発生しました。設定された最小メモリサイズ間のスペースが削除されました。

h2o.init(min_mem_size = "10 G")エラーが発生しました:

VMの初期化中にエラーが発生しました初期ヒープが小さすぎます

10とGの間のスペースを削除した後、それはうまくいきました:

h2o.init(min_mem_size = "10G")

0
Job Kavoya