JDK9 build failure on Windows : javac OutOfMemoryError

Bradford Wetmore bradford.wetmore at oracle.com
Thu Mar 13 21:36:31 UTC 2014


Phil,

That looks exactly like my problem.

http://mail.openjdk.java.net/pipermail/build-dev/2014-March/012089.html
Subject:  Heads Up:  OutOfMemoryError when building a 64-bit JDK 9 using 
a 32-bit bootdir.

 > Yes, 32 bit it appears, although I didn't supply the boot dir option,
 > it chose it all by itself.

I *BELIEVE* that for the bootdirs discovery (I haven't checked the 
code), if a JDK isn't given one with config's --with-boot-jdk, it 
defaults to whatever JDK is found in the path.  I typically only install 
a 32-bit one, as several applets I use require 32-bit only.

 > Who can dig into how much heap is actually needed and see if some new
 > bug is requiring more than that ?

As for how much head is actually needed, I haven't dug into it, but just 
doing a simple javac -XmxXXXM Foo.java, I could only get up to about 
1500M.  I wasn't able to build on my laptop, but my lab machine worked 
just fine, so it's probably close to the border.

Brad






On 3/12/2014 3:17 PM, Phil Race wrote:
> Yes, 32 bit it appears, although I didn't supply the boot dir option, it
> chose it all by itself.
> Who can dig into how much heap is actually needed and see if some new
> bug is
> requiring more than that ?
>
> -phil.
>
> On 3/12/2014 3:06 PM, Mike Duigou wrote:
>> Is your bootjdk a 32 bit VM? Brad Wetmore had similar issues last
>> week. The problem in his case was that the 32 bit VM couldn't get a
>> large enough heap. Switching to a 64 bit boot jdk resolved the issue
>> for him.
>>
>> Mike
>>
>> On Mar 12 2014, at 14:45 , Phil Race <philip.race at oracle.com> wrote:
>>
>>> I'm on Windows 7 64 bit  and I've quit every app except for my
>>> console windows
>>> yet I still get this error below.
>>>
>>> How can I get past this ?
>>>
>>> -phil.
>>>
>>> ----------
>>> ## Starting jdk
>>> Compiling 9635 files for BUILD_JDK
>>>
>>>
>>> The system is out of resources.
>>> Consult the following stack trace for details.
>>> java.lang.OutOfMemoryError: Java heap space
>>>         at
>>> com.sun.tools.javac.tree.TreeMaker.Literal(TreeMaker.java:451)
>>>         at
>>> com.sun.tools.javac.parser.JavacParser.literal(JavacParser.java:740)
>>>         at
>>> com.sun.tools.javac.parser.JavacParser.literal(JavacParser.java:660)
>>>         at
>>> com.sun.tools.javac.parser.JavacParser.term3(JavacParser.java:1158)
>>>         at
>>> com.sun.tools.javac.parser.JavacParser.term2(JavacParser.java:910)
>>>         at
>>> com.sun.tools.javac.parser.JavacParser.term1(JavacParser.java:881)
>>>         at
>>> com.sun.tools.javac.parser.JavacParser.term(JavacParser.java:837)
>>>         at
>>> com.sun.tools.javac.parser.JavacParser.term(JavacParser.java:817)
>>>         at
>>> com.sun.tools.javac.parser.JavacParser.parseExpression(JavacParser.ja
>>> va:780)
>>> ....
>>> ....
>>>
>>> make[2]: ***
>>> [/cygdrive/c/jdks/client/build/windows-x86-normal-serverANDclient-release/jdk/classes/_the.BUILD_JDK_batch]
>>> Error 3
>>> BuildJdk.gmk:64: recipe for target `classes-only' failed
>>> make[1]: *** [classes-only] Error 2
>>> /cygdrive/c/jdks/client//make/Main.gmk:116: recipe for target
>>> `jdk-only' failed
>>> make: *** [jdk-only] Error 2
>>> ---------------------
>



More information about the build-dev mailing list