This is related to the behavior described in
FORGE-593. In that bug, a keystroke consumed by Forge was lost due to the blocking thread. The bugfix for that issue did not involve any fixes around the blocking read on System.in.
Hence, the reader thread continues to block when reading System.in, thus requiring users to send another keystroke (again to be consumed by the blocking reader) on exiting Forge (since the reader operates in a non-daemon thread).