質問

毎15-30分間でボタンひ示"java.lang.OutOfMemoryError: PermGen space".から学んだことからこのように関連するクラスローダの漏洩またはメモリリークします。

残念ながらすべてのご提案かった関連アプリケーションサーバという適応してボタンひ.んなものを必ずとっても同じ問題)

での問題ださい。かにすることができますのでドキュメンタリーフィルム

役に立ちましたか?

解決

この定数クラスに出荷します。

Java店舗のクラスのバイトコードの定数など文字列定数)の永久ヒープではないゴミ収集したデフォルト(ある意味では大半の状況で授業を取り込み回だけ動作中のものとします。

るアプリケーションがクラスをロード中に全体の寿命であって、次に掲げるもの

  • webアプリケーションサーバ時の温泉再デプロイを行;
  • IDEの実行時に開発した用途(毎時間ございますのでご注意下さ実行ボタンボタンひまたはeclipseでの負荷のアプリケーションの授業を新たに);
  • など この動作が不適当でヒープフル充填されるのでしょう。

する必要性を永久ヒープのごみ収集これを防ぐためにエラーとなります。

使用オプション

-XX:MaxPermSize=256M
-XX:+CMSClassUnloadingEnabled
-XX:+CMSPermGenSweepingEnabled

(停止私eclipse3.4から投げ"java.lang.OutOfMemoryError: PermGen space"なるものでなければならないのか作xsltproc).

編集:うに注意してくださいXsltproc、設定したオプション:[Netbeans installation]\etc\netbeans.conf すべprefixeそのオプション -J 追加し netbeans_default_options (コメント netbeans.conf より情報).

他のヒント

のNetBeans NETCONFに次の引数を追加してください:-J-XX:MaxPermSizeを= 256メートル

このを参照してください。 PermSizeをのサイズを設定する方法についてにリンクします。おそらくこれはあなたのコードの問題ではありませんので、唯一の解決策は、PermSizeをを増やすことであろう。私はあなたがJAXBで作業する場合、これは、かなり頻繁にあることを見出しました。あなたは自分自身にも他の多くのjarファイルに依存する多くのライブラリを使用する場合、一般的には、PermGenスペースのデフォルトサイズは十分な大きさではないかもしれない。

詳細については、これらのブログの記事を参照してください:クラスローダ漏れが修正する方法恐ろしい "java.lang.OutOfMemoryErrorを:PermGen空間"

は、Webアプリケーションを開発している場合、サーバーのVMオプションに配置しよう。

-Xmx512m -Xms512m -XX:MaxPermSizeを= 512メートル

//プラットフォーム/ VMオプション(Netbeansの7.4)ツール/サーバーに移動します。

あなたは、ファイル/etc/netbeans.confを編集することでのNetBeans JVMの起動オプションを変更することができます。 私はのWebappを開発し、私は多くの場合、それを展開するときに、私は多くの場合、エラーのこの種を持っています。その場合は、私は時々Tomcatを再起動します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top