Сборка Maven завершилась неудачно с превышением лимита GC - PullRequest
0 голосов
/ 22 октября 2018

Я пытаюсь построить проект с помощью следующей команды

mvn clean install 

Но каждый раз, когда он заканчивается проблемой с памятью, я запускаю одну и ту же команду с параметром -X, и он заканчивается с последующей ошибкой детализации.

[ОШИБКА] Превышен лимит накладных расходов GC -> [Help 1] java.lang.OutOfMemoryError: Превышен лимит накладных расходов GC в java.util.Arrays.copyOf (Arrays.java:3332) в java.lang.AbstractStringBuilder.ensureCapacityInternal (AbstractStringBuilder.java:124) в java.lang.AbstractStringBuilder.append (AbstractStringBuilder.java:649) в java.lang.StringBuilder.append (StringBuilder.josg.java: 20).parseReference (Clazz.java:1807) в aQute.bnd.osgi.Clazz.parseReferences (Clazz.java:1774) в aQute.bnd.osgi.Clazz.parseDescriptor (Clazz.java:1756) в aQute.bnd.osgi.Clazz.referTo (Clazz.java:1727) в aQute.bnd.osgi.Clazz.parseClassFileData (Clazz.java:759) в aQute.bnd.osgi.Clazz.parseClassFileData (Clazz.java:509) в aQute.bnd.osgi.Clazz.parseClassFileWithCollector (Clazz.java:494) в aQute.bnd.component.AnnotationReader.getDef (AnnotationReader.java:134) в aQute.bnd.component.AnnotationReader.getDefinition (AnnotationReader.java:130) в aQute.bnd.component.DSAnnotations.analyzenojar DS (: 126) в aQute.bnd.osgi.Analyzer.doPlugins (Analyzer.java:664) в aQute.bnd.osgi.Analyzer.analyze (Analyzer.java:216) в aQute.bnd.osgi.Builder.analyze (Builder.Java: 387) в aQute.bnd.osgi.Analyzer.calcManifest (Analyzer.java:694) в aQute.bnd.osgi.Builder.build (Builder.java:108) в org.apache.felix.bundleplugin.BundlePlugin.buildOSGiBundle(BundlePlugin.java:972) в org.apache.felix.bundleplugin.BundlePlugin.execute (BundlePlugin.java:467) в org.apache.felix.bundleplugin.BundlePlugin.execute (BundlePlugin.java:384. At или в).felix.Java: 208)в org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:153) в org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:145) в org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:116) в org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:80) в org.apache.maternal.BilderSuderin.build (SingleThreadedBuilder.java:51) в org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) в org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:307) [ОШИБКА][ОШИБКА] [ОШИБКА] Для получения дополнительной информации об ошибках и возможных решениях, пожалуйста, прочитайте следующие статьи: [ОШИБКА] [Справка 1] http://cwiki.apache.org/confluence/display/MAVEN/OutOfMemoryError

Поэтому я попытался найти причину и решениевышеприведенное исключение и добавленные ниже строки внутри родительского файла pom.xml проекта, но все та же проблема

<project>
  [...]
  <build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <fork>true</fork>
          <meminitial>512m</meminitial>
          <maxmem>1048m</maxmem>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>
  [...]
</project>

, затем я добавляюed

MAVEN_OPTS="-Xmx1024M -Xss128M -XX:MetaspaceSize=512M -XX:MaxMetaspaceSize=1024M -XX:+CMSClassUnloadingEnabled"

в разделе системных переменных переменной Environment, но это также не помогает. Я использую Windows 10 и Java версии 8.

Может кто-нибудь сказать, что будет решением?

1 Ответ

0 голосов
/ 31 октября 2018

Добавление этих системных переменных решит проблему

MAVEN_OPTS = -Xmx2048M -Xss128M -XX:MaxPermSize=2048M -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC

Это можно добавить в переменную окружения.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...