Unlike javac, lombok uses recursion to fish all the child nodes out of
a given node (each child node has its own children, and so on and so
forth). Apparently you've got sufficient nesting going on that you're
running out of heap. We also create a copy of each AST, because
javac's AST does not allow 2-way traversal, which is something we
really do need. Thus, compiling with lombok requires twice the memory,
at least. As java, by default, only gives a measly 64MB of memory to a
new process, I don't think this makes lombok particularly slow and/or
demanding on the hardware. The need to put in a cryptic parameter (-J-
Xmx) is annoying, though. If you want, file an issue with that stack
trace so lombok can at least suggest you add -J-Xmx to the compile
run, and if possible we should investigate if we can lower heap
requirements. It won't be a priority though - we've got too much to do
as is :P
On Oct 5, 12:36 pm, Arie Fishler <
afish...@gmail.com> wrote:
> memory increased and it seems to work. why is such a substantial increase in
> mem requirements because of lombok during compile?
>