5

Struts2 + SpringおよびHibernateフレームワークを使用して、Ubuntu 11.10でNetBeansでプロジェクトを作成しました。最初の実行は問題ありませんが、2 回目または 3 回目に実行すると、この例外が発生し続けます。Maven がなければ、すべてうまくいきます。でmavenをインストールしました。apt-get installはい、この行を に追加しましexport MAVEN_OPTS=-Xmx512musr/bin/mvnが、運がありませんでした。そこからより良いパフォーマンスを得るにはどうすればよいですか?

4

3 に答える 3

5

次の行を追加する必要があります。

export MAVEN_OPTS="-Xmx512M -XX:MaxPermSize=512M" 

一部のユーザーは、二重引用符が問題を引き起こすと報告していることに注意してください。

export MAVEN_OPTS=-Xmx512M -XX:MaxPermSize=512M 

編集:

Tomcat を使用しているので、これを使用します。

  1. tomcat/bin/catalina.shを開く
  2. この行をJAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms512m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX に追加します:MaxPermSize=256m -XX:+DisableExplicitGC"
  3. 保存して終了し、Tomcat を再起動します

詳細はこちら...

于 2012-06-08T13:59:33.890 に答える
4

permgen space は通常、オブジェクトがメモリを適切にクリアしない場合にこのエラーをスローします。通常、参照がまだそれらを指しているオブジェクトである「島」の原因ですが、プログラマーとしてのあなたはこれらの参照にアクセスできません。それらはあなたの空間の外にあるからです。この問題を引き起こしているライブラリを使用している可能性があり、このライブラリの使用をやめるまで問題が解決しない可能性があります。どのライブラリかはわかりませんが、これを見つける方法を説明する記事はたくさんありますが、それは雑用であり、運が悪い場合を除いて時間がかかる場合があります。メモリプロファイラは、いくつかのアイデアを与えることができます.

良い説明記事

于 2012-06-08T13:55:41.123 に答える
3

-Xmx512mヒープスペースを増やしているため、役に立ちません。ヒープ領域ではなく、PermGen 領域が不足しています。

PermGen スペースを増やして、それをガベージするためのフラグを立ててみてください。詳細情報は次のとおりです。Tomcat 6 で繰り返される「PermGen」

于 2012-06-08T13:53:35.037 に答える