Jake Robb commented on MCOMPILER-325:

So, I decided to be a good citizen and make a test project, and in my test 
project, I'm seeing the expected output. I'm unclear on why I wasn't earlier. 
I'll do some more research and revisit this as soon as I know more. In the 
meantime, please don't close as Can't Reproduce or whatever. Thanks! :)

> StackOverflowError from javac is not reflected in output
> --------------------------------------------------------
>                 Key: MCOMPILER-325
>                 URL: https://issues.apache.org/jira/browse/MCOMPILER-325
>             Project: Maven Compiler Plugin
>          Issue Type: Bug
>    Affects Versions: 3.7.0
>            Reporter: Jake Robb
>            Priority: Minor
> Context: 
> [https://stackoverflow.com/questions/48775213/maven-compilation-error-without-any-errors-from-the-compiler]
> If the Java code being compiled contains a chain of method calls that is too 
> long to fit in javac's stack, javac will throw a StackOverflowError and exit.
> The resulting output indicates that javac errored, but does not show the SOE, 
> nor which source file caused it. (It'd be nice if it actually pointed out the 
> problem, but that's on javac, not on the Maven plugin.)
> For more recent versions of the plugin, if {{verbose=true}}, the plugin 
> output includes the files being compiled as they go, and so the last file 
> output is helpful, but it still doesn't indicate what went wrong. -X and -e 
> args to Maven are also not helpful.
> In my case, the failure occurred using default settings for stack size (I 
> think it's 1MB) when compiling a test case that chained together 673 builder 
> methods, e.g.
> {code:java}
> return new 
> MyBuilder().foo(a1).foo(a2).foo(...).foo(a672).foo(a673).build();{code}
> I assume this problem is not unique to StackOverflowErrors and would affect 
> any thrown Error from javac.
> The plugin should be updated to capture javac's error output and include it 
> when applicable.

This message was sent by Atlassian JIRA

Reply via email to