2013-01-10 22 views
7

Ben Sonar büyük bir projeyi analiz edip aşağıdaki hatayı alıyorum ediyorum:Sonar analizi bellek hatası veriyor, Ant veya Sonar sunucusunun JVM yığın alanını artırmalı mıyım?

[sonar:sonar] 03:55:39.511 INFO p.PhasesTimeProfiler - Execute decorators... 

BUILD FAILED 
[...] 
[...] java.lang.OutOfMemoryError: Java heap space 
at org.sonar.batch.index.MeasurePersister.model(MeasurePersister.java:127) 
at org.sonar.batch.index.MeasurePersister.getMeasuresToSave(MeasurePersister.java:117) 
at org.sonar.batch.index.MeasurePersister.dump(MeasurePersister.java:70) 
at org.sonar.batch.index.DefaultPersistenceManager.dump(DefaultPersistenceManager.java:63) 
at org.sonar.batch.phases.Phases.execute(Phases.java:95) 
at org.sonar.batch.bootstrap.ProjectModule.doStart(ProjectModule.java:139) 
at org.sonar.batch.bootstrap.Module.start(Module.java:83) 
at org.sonar.batch.bootstrap.BatchModule.analyze(BatchModule.java:131) 
at org.sonar.batch.bootstrap.BatchModule.doStart(BatchModule.java:121) 
at org.sonar.batch.bootstrap.Module.start(Module.java:83) 
at org.sonar.batch.bootstrap.BootstrapModule.doStart(BootstrapModule.java:121) 
at org.sonar.batch.bootstrap.Module.start(Module.java:83) 
at org.sonar.batch.Batch.execute(Batch.java:104) 
at org.sonar.ant.Launcher.execute(Launcher.java:78) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:616) 
at org.sonar.ant.SonarTask.delegateExecution(SonarTask.java:244) 
at org.sonar.ant.SonarTask.execute(SonarTask.java:193) 
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) 
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:616) 
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
at org.apache.tools.ant.Task.perform(Task.java:348) 
at org.apache.tools.ant.Target.execute(Target.java:392) 
at org.apache.tools.ant.Target.performTasks(Target.java:413) 
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) 
at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) 
at org.apache.tools.ant.Project.executeTargets(Project.java:1251) 
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:442) 

Koşuyorum Sonar sunucunun java yığın boşluk veya Sonar işi yürütme Ant hedef artırmak mı? Eğer çalışan Ant VM için yığın alanı artırmalıdır böylece

+0

Hangi IDE kullanıyorsunuz? – ppeterka

+0

Ant hedefini (Sonar) yürütmek için Jenkins kullanıyorum (Sonar) – user1340582

+0

Oh, Tamam, bu ben dışarıda bırakma olasılığım ... – ppeterka

cevap

13

Eğer yığın izleme görebileceğiniz gibi, Ant, Sonar analizini başlatır

Bu BTW çok benzer bir soru:. How to increase Sonar Java heap space

The Sonar ANT task executes as part of ANT so you need to set the JVM heap using the standard ANT environment parameter. For example:

export ANT_OPTS=-Xmx256m

0: diğer soru üzerine Mark O'Connor tarafından cevap gelen komut satırı Ant kullanım için

Alıntı

Açıklamalar:

kullanmak

Bu forum iplik faydalıdır: yanıtlarından ANT build java heap space

Alıntı:

Please make sure that you increased heap in a correct place. You need to click 'Properties' button in IDEA's Ant tool window and edit 'Maximum heap size (Mb)' field there.

Ayrıca IntelliJ Fikir sayfasından:

The memory heap of the build process is independent of IntelliJ IDEA memory heap, and is released after the build process is complete.

To increase a memory heap: Open the Build File Properties dialog box. In the Maximum heap size field, type the required amount of memory.

: makaleden Increasing Memory Heap

Alıntı Jenkins Con için

tinuous Entegrasyon ve Ant build

Bu soru yararlıdır: How to increase maven heapspace in hudson builds

  1. Navigate to your hudson job,
  2. click Configure,
  3. scroll down to the Build section, and
  4. click the Advanced button.
  5. Enter this into MAVEN_OPTS: -Xmx512m -XX:MaxPermSize=128m
: Maven
kurar için

Set the JAVA OPTIONS as -Xmx512m -XX:MaxPermSize=256m only without the ANT_OPTS=

bu makale faydası yoktur: cevaptan How to use the Java Options in jenkins ant build tool to set ANT_OPTS

Alıntı

+0

mac için ne ..? – Mansur

İlgili konular