I discovered a bug in Commons CLI while using it through Groovy's CliBuilder. See the following issue:
The following code:
def cli = new CliBuilder(footer: "line1:\n line2:\n")
Produces the following output:
Note that there are no whitespaces before "line2". Replacing them with "\t" doesn't solve the problem either.