Eclipse Ant构建任务生成OutOfMemoryError-在几个成功构建之后

Eclipse Ant构建任务生成OutOfMemoryError-在几个成功构建之后,eclipse,jenkins,ant,out-of-memory,Eclipse,Jenkins,Ant,Out Of Memory,在Eclipse工作区中创建了项目的无头构建设置 基本上这就是它的工作原理 Eclipse工作区提供了这些项目 通过ant文件 使用EclipseAnt任务清理、刷新、构建eclipse工作区 然后运行任务来构建jar 除了通过EclipseAnt任务构建之外,所有工作都很好,在大约50次这样的执行之后,运行到OutOfMemoryError 注意:自动构建一直失败-直到在该工作区上打开Eclipse并关闭。 此后,在50个构建中再次正常运行,然后是OutOfMemoryError 在A

在Eclipse工作区中创建了项目的无头构建设置

基本上这就是它的工作原理

  • Eclipse工作区提供了这些项目
  • 通过ant文件
    • 使用EclipseAnt任务清理、刷新、构建eclipse工作区
    • 然后运行任务来构建jar
除了通过EclipseAnt任务构建之外,所有工作都很好,在大约50次这样的执行之后,运行到OutOfMemoryError

注意:自动构建一直失败-直到在该工作区上打开Eclipse并关闭。 此后,在50个构建中再次正常运行,然后是OutOfMemoryError

在Ant文件中构建工作区任务

<target name="build_workspace">
    <echo message="building workspace" />
    <eclipse.incrementalBuild kind="full"/>
</target>

我认为您需要在JVM的Ant配置中增加最大内存限制。 这件事可以顺便做 -Xmx1024m(如果您想将1GB设置为限制)作为eclipse中的VM参数。 下面是一种方法。

我认为您需要在JVM的Ant配置中增加最大内存限制。 这件事可以顺便做 -Xmx1024m(如果您想将1GB设置为限制)作为eclipse中的VM参数。 下面是一种方法。

在发表本文/提问之前,我已经这样做了。增加内存并不能解决这个问题,Eclipse或Workspace中肯定积累了一些东西——这导致了这个问题。。。。哪些需要清理/清洁。。。。但我不知道我在找什么,也不知道我在找什么。我已经这样做了——在写这篇文章/问题之前。增加内存并不能解决这个问题,Eclipse或Workspace中肯定积累了一些东西——这导致了这个问题。。。。哪些需要清理/清洁。。。。但我不知道我在找什么,在哪里。
<target name="build_workspace">
    <echo message="building workspace" />
    <eclipse.incrementalBuild kind="clean"/>
    <eclipse.incrementalBuild kind="incremental"/>
</target>
build_workspace:
     [echo] building workspace

BUILD FAILED
C:\Users\US\.jenkins\workspace\XBrowseReleaseBranchTests\testrunscripts\runtests.xml:51: java.lang.OutOfMemoryError: Java heap space
    at java.util.Arrays.copyOf(Arrays.java:2882)
    at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
    at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:390)
    at java.lang.StringBuilder.append(StringBuilder.java:119)
    at java.lang.Throwable.toString(Throwable.java:344)
    at java.lang.String.valueOf(String.java:2826)
    at java.io.PrintWriter.println(PrintWriter.java:710)
    at java.lang.Throwable.printStackTrace(Throwable.java:509)
    at org.eclipse.jdt.internal.compiler.util.Util.getExceptionSummary(Util.java:627)
    at org.eclipse.jdt.internal.compiler.Compiler.handleInternalException(Compiler.java:589)
    at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:524)
    at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:365)
    at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.compile(BatchImageBuilder.java:178)
    at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:302)
    at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.build(BatchImageBuilder.java:60)
    at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java:254)
    at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:173)
    at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
    at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
    at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
    at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
    at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:513)
    at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:422)
    at org.eclipse.core.resources.ant.IncrementalBuild.execute(IncrementalBuild.java:75)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)