facebook

Out of memory regardless of heap size – how to investigate?

  1. MyEclipse IDE
  2.  > 
  3. Off Topic
Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #269106 Reply

    I exported an Ant build script, and it includes a user-build via the <?eclipse.ant.import?> tag which just overrides the classpath of the exported script so the compiler can find jars in linked folder. When I launch the build script (default target of “build”) the script copies resources to the bin/ folder, starts the compiler, and then runs out of memory. I’ve increased my heap size with -Xmx1024M to no avail. And the heap display in eclipse shows 24M of 84M so that doesn’t seem like the problem anyway. The error message mentions some logged output from the compiler but I don’t know where to find that?

    If I put only a few java sources on my source path the compile finishes successfully. The project also compiles correctly when eclipse builds it directly (instead of using the Ant script) but that’s not a solution for me when creating a deliverable set of programs.

    Any suggestions?

    Console output in eclipse:
    Buildfile: D:\byers\EclipseWorkspace\FloridaDOT\ITSFiberMgmt\SpatialAgeCore\build.xml
    user-init:
    Overriding previous definition of reference to SpatialAgeCore.classpath
    clean:
    [delete] Deleting directory D:\byers\EclipseWorkspace\FloridaDOT\ITSFiberMgmt\SpatialAgeCore\bin
    cleanall:
    build-subprojects:
    init:
    [mkdir] Created dir: D:\byers\EclipseWorkspace\FloridaDOT\ITSFiberMgmt\SpatialAgeCore\bin
    [copy] Copying 130 files to D:\byers\EclipseWorkspace\FloridaDOT\ITSFiberMgmt\SpatialAgeCore\bin
    build-project:
    [echo] SpatialAgeCore: D:\byers\EclipseWorkspace\FloridaDOT\ITSFiberMgmt\SpatialAgeCore\build.xml
    [javac] Compiling 2042 source files to D:\byers\EclipseWorkspace\FloridaDOT\ITSFiberMgmt\SpatialAgeCore\bin
    [javac] The system is out of resources.
    [javac] Consult the following stack trace for details.
    [javac] java.lang.OutOfMemoryError

    BUILD FAILED
    D:\byers\EclipseWorkspace\FloridaDOT\ITSFiberMgmt\SpatialAgeCore\build.xml:40: Compile failed; see the compiler error output for details.

    Total time: 13 seconds

    #269120 Reply

    Update: I’ve found that using fork=”yes”, and memoryMaximumSize=”256m” in the javac tag makes the code compile successfully. But I don’t want to modify the eclipse-generated file. I’d rather do this in my user-build script accessed via <?eclipse.ant.import?>. I thought I could put a “build-project” target in my user-build and have that override what’s in the eclipse-generated file. But apparently there’s something I don’t understand about this because my user-build rule is ignored.

    Can you maybe see where I’m going wrong? i.e. is there something more I need to do for my user-build target to take precedence over the eclipse-generated target? Or is there another approach altogether for getting the fork & maximumMemorySize attributes into the javac tag?

    I could of course just take over the whole script but for maintenance reasons it would still be nice to have eclipse include referenced projects, subprojects, classpath, etc.

    Thanks for any help you might have – Walter

    #269170 Reply

    Riyad Kalla
    Member

    Moving to OT > Soft Dev

    #269172 Reply

    Loyal Water
    Member

    When you run an Ant script, it is considered an “external tool”, you can actually adjust the run-time arguments for the script from that page and give it more memory.

    Also something to note is that Ant scripts execute out-of-process from the Eclipse VM, so if you are running out of memory, increasing the heap of MyEclipse won’t help.

Viewing 4 posts - 1 through 4 (of 4 total)
Reply To: Out of memory regardless of heap size – how to investigate?

You must be logged in to post in the forum log in