System.console null in a gradle java task

I have a doubt though ,System.out.println(“”) is printing correctly to the console. How is this possible?

It’s using the same file descriptor, but that’s not the same as actually inheriting it and being attached to the console. That is, it’s the same stream, but this is not enough for the child process to be able to actually use the console. To the child process, it appears as though stdin is something else like a file.

Also do you think this can be a good addition to the featureset ?

Yes, it should be possible to properly inherit the streams.