1

私は自分のWebアプリケーションの耳を傾けています。これは、約23のプロジェクト内の複数のプロジェクトで構成されており、そのうちのいくつかはJavaプロジェクトであり、いくつかは動的Webプロジェクトです。RADからEARを作成すると、正常に生成されますが、MAVENからEARを作成しようとすると、ヒープサイズの問題が発生します。プロジェクトの数を23から12に減らすと、POM.xmEARは正常に生成されますが、プロジェクトの数を増やすと、ヒープサイズの同じエラーが発生します。

環境変数を設定するとMAVEN_OPTS = -Xmx1024M、機能しません。私のPCRAMは2GBですが、設定しようとするとMAVEN_OPTS = -Xmx2048M、JVM用にこれだけのスペースを予約できないため、エラーがスローされます。

私はjdk1.7とmaven3を持っています。

提案してください。

4

2 に答える 2

4

We have the same problem with our multi-module project. There seems to be a memory leak in the compiler or the compiler plug-in. So when Maven starts to build the EAR it consumes too much memory to build the EAR project, too. However you can advise the compiler to run in a seperate process so this problem does not occur (see Maven docs):

<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
      <fork>true</fork>
    </configuration>
  </plugin>
</plugins>
于 2012-07-23T11:47:02.720 に答える
3

提案:

  • より多くのメモリを搭載したマシンを入手してください。
  • ビルドを実行する前に IDE をシャットダウンします。
  • ヒープ サイズを1Gb から 2Gbの間の数値に増やしてみてください。
  • installゴールを使用して、コンポーネント プロジェクトを一度に 1 つずつ正しい順序でビルドしてみてください。(問題は、Maven が個々のプロジェクトをビルドする間にあまりにも多くのものをメモリに保持していることが原因である可能性があります。)

2Gb のヒープ領域を割り当てられない理由を調べることも価値があります。スワップ領域の問題であるか、回避できる 32 ビット Windows 2Gb 制限である可能性があります。

そして、ローランドのアイデアも良いものです。

于 2012-07-23T11:41:58.180 に答える