Mac OS X上でJava用の最大メモリサイズ "heap"を変更しようとしています。 "-XX:MaxPermSize"を変更する場所はたくさんありますが、ファイルを検索し、その設定をどこで変更するかを知らない。Mac OS XでJava用の最大メモリヒープを変更する
答えて
最大ヒープサイズは-Xmx
スイッチで設定します。
-XX:MaxPermSizeをはあなたがこのパラメータを使用してJava VMが使用できるメモリを設定することができ、合計ヒープ
-Xmxスイッチはメモリサイズをグローバルに変更しません。一度に1つのクラスでのみ動作します。私はどのようにすべてのスクリプトのメモリ割り当てをグローバルに変更するのだろうかと思います。 – user1435853
@ user1435853ここで、-Xmxはグローバルではないことを読んだことがありますか?これは、JVM全体に適用されます。 –
「-XX:MaxPermSize」を設定するためにどのファイルを編集しますか?私がクラスを指定しない限り、 "java -Xmx"コマンドは私のためには機能しません。ヒープメモリの設定はグローバルに変更されません。 – user1435853
のサブセットであるパーマ世代の最大サイズを指定するために使用されます。
-Xms64m -Xmx200m
-Xmsは最小メモリを指定します。 -Xmxは最大値です。
アプリを実行するときに指定する必要があります。あなたはapp.jarという名前のjarファイルは、あなたが
java -Xms64m -Xmx512m -jar app.jar
を入力し、それを実行することができますたとえば、私は、32ビットマシン上で使用すると、JVMに1GBのより多くを与えることができないと思います。
IDEを使用している場合は、おそらくこれらのパラメータをプロジェクトの設定に設定できます。 eclipseでは、例えば、Run-> Run Configurationsをクリックするとできます。 –
なぜ1Gだけですか?それは理論では3Gか4Gではないのですか? –
32ビットアーキテクチャでは最大4GBの物理メモリを使用できますが、アプリケーション、プロセスなどが使用できるメモリは多くの要因によって異なります。 例えば、OSにはシステムプロセスなどを処理するためのメモリ量が必要です。 VMメモリの制限がどこから来るのか分かりません。残念です。とにかく、私はそれがまたあなたが現在使っているOSに依存すると思います。 Windowsでは、1GB以上のVMをVMに与えることはできません –
ターミナルからアプリケーションを起動している場合は、コマンドラインで引数を指定したい:
java -XX:MaxPermSize=128m ...
これは、他のプラットフォーム上と同じです。
これをアプリケーションバンドル(つまり、ダブルクリック可能な通常のMacアプリケーションのようなJavaアプリケーション)に設定する必要がある場合は、バンドル内にあるinfo.plistファイルを編集する必要があります通常は見えません。
This pageにはIntelliJでこれを行う方法が記載されていますが、他のバンドルされているMac Javaアプリケーションにも適用されます。
私はWEKAを使用していましたが、同じ問題がありました。 ここで、私は解決策を見つけました、そして、それは簡単でした。
Goアプリケーションへ==>(ウェカのような)特定のアプリケーションに 左クリック==>ショーパッケージ内容==>内容==> Info.plistの==> Javaの==> VMOptions ==>増加(私のMacではデフォルトで1Gbでしたが、私は6Gbに増えました)
私はこの答えを好む、それは簡単でシンプルで永久的な修正を提供するからです。 –
私は端末で非常に大きな配列を持つJavaプログラムを実行しようとしていました。これは、メモリが不足して保管が、私は、スレッドごとに許可増加メモリで問題を修正:
$ java -Xss12G name
ここ-Xss12G
は、スレッドごとに12GBを割り当て、その後name
を実行するためにJavaランタイムに指示します。同様に-Xss4G
はスレッドごとに4Gbを使用します。 $
はTerminal
コンソールプロンプトであり、フォルダーとあなたの名前を持つことができます。ターミナルでコマンドjava -X
を書くことによって、あなたは、ヒープとスレッドのメモリを割り当てる方法の詳細を取得します
:
$ java -X
- 1. mac os xのネットワークステータス変更通知x
- 2. Mac OS X上のJavaプロファイラツール
- 3. Mac OS XのJava System.getProperty( "user.dir")
- 4. Mac OS XのJavaドラッグアンドドロップ
- 5. Mac OS X:キーボードレイアウト変更の代行
- 6. Mac OS X(Java/Firewire)でのJavaビデオキャプチャ
- 7. Mac OS Xで大きなフロートをインストール
- 8. Mac OS X Java SDKサポート
- 9. Java JDK7 on Mac OS X 10.7.3
- 10. JavaアプリケーションWindowsとMac OS X
- 11. のMac OS X NodeJS:Macのポートを使用して、MAC OS X上
- 12. Mac OS X用UIPopoverController?
- 13. Mac OS XのJavaプログラミングエディタでの問題
- 14. Mac OS Xでペアレンタルコントロールをプログラムで変更する
- 15. Mac OS X Lion:最大パスの長さは?
- 16. EclipseでJavaで環境変数を使用するには? (MAC OS X)
- 17. Mac OS X Lionのviaコマンドラインのネットワークプロキシ設定を変更する
- 18. Mac OS X用のJavaプロファイラ、ヒープのマーク付けをサポートする
- 19. Mac OS X用のFortranデバッガ
- 20. Mac OS X用のldconfig
- 21. Mac OS X用のUIDeviceクラス?
- 22. のMac OS X
- 23. Mac OS X上のJavaの将来
- 24. JavaのMac OS X Finderのラベル
- 25. Mac OS XのMAMPでMySQLルートパスワードを変更
- 26. Mac OS X上のJava RE 6高Sierra
- 27. Mac OS XでJNotify?
- 28. MySQLはMac OS Xのrootのデフォルトパスワードを変更します
- 29. OS Xのxattrの最大サイズ
- 30. Mac OS X用openalチュートリアル
鍬あなたは、javaを実行していますか? – Mark
なぜ「スカラ」タグがありますか? Scalaを実行している場合、答えはJavaとまったく同じではありません(java -cp /.../ scala-library.jar:...ではなく 'scala'を使用している場合)。 –
私が過去にやったことは、 ''/bin/java'''を ''/bin/realjava'''に移動してシェルスクリプト ''/bin/java''を作成し、特定のデフォルト設定の実際のもの。しかし、私はこれに反対することを勧めます。個々のJVMを正確な要件に調整する方がずっと優れています。 – opyate