15

Mac OS X で Java の最大メモリ サイズの「ヒープ」を変更しようとしています。設定。

4

5 に答える 5

13

次のパラメータを使用して、Java VM で使用可能なメモリを設定できます。

-Xms64m -Xmx200m

-Xms は最小メモリを指定します。-Xmx 最大のもの。

アプリを実行するときにそれらを指定する必要があります。たとえば、app.jar という名前の jar がある場合は、次のように入力して実行できます。

java -Xms64m -Xmx512m -jar app.jar

32 ビット マシンでは、JVM に 1Gb を超える容量を与えることはできないと思います。

于 2012-06-04T20:08:54.750 に答える
10

私はWEKAを使用していましたが、同じ問題が発生しました。ここで、解決策を見つけました。簡単でした。

アプリケーションに移動==>特定のアプリケーション(Wekaなど)を左クリック==>パッケージコンテンツを表示==>コンテンツ==>Info.Plist==>Java==> VMOptions==>必要に応じてメモリのサイズを増やします(私のMacではデフォルトは1 Gbでしたが、6 Gbに増やしました)

于 2013-11-21T18:41:05.950 に答える
2

ターミナルで非常に大きな配列を持つ Java プログラムを実行しようとしていました。メモリが不足し続けましたが、スレッドごとに許可されるメモリを増やすことで問題を修正しました。

$ java -Xss12G name

ここで、-Xss12Gは Java ランタイムに、スレッドごとに 12Gb を割り当ててから実行するように指示しますname。同様に-Xss4G、スレッドごとに 4Gb を使用します。これ$Terminalコンソール プロンプトで、おそらくフォルダと名前が表示されます。

注: スレッドを使用していない場合は、現在のプログラムまたは実行中のメイン スレッドに使用するメモリを割り当てます。

ターミナルでコマンドを記述するjava -Xと、ヒープとスレッド メモリの割り当てに関する詳細が表示されます。

$ java -X
于 2016-02-15T13:22:45.333 に答える
2

スイッチを使用して最大ヒープ サイズを設定し-Xmxます。

-XX:MaxPermSize は、全ヒープのサブセットであるパー​​マ生成の最大サイズを指定するために使用されます

于 2012-06-04T20:02:02.060 に答える
1

ターミナルからアプリケーションを起動する場合は、コマンド ラインで引数を指定します。

java -XX:MaxPermSize=128m ...

これは他のプラットフォームと同じです。

これをアプリケーション バンドル (つまり、通常のダブルクリック可能な Mac アプリのような Java アプリ) に設定する必要がある場合は、info.plist ファイルを編集する必要があります。このファイルはバンドル内にあり、通常は見える。

このページには、IntelliJ でこれを行う方法が記載されていますが、バンドルされている他の Mac Java アプリにも適用できます。

于 2012-06-04T20:11:41.907 に答える