Commandline flag --logLevel is required to be first in commandline

These two commands are not equivalent, only the latter version actually enables debug logging

java -jar liquibase.jar --defaultsFile update --logLevel=debug
java -jar liquibase.jar --logLevel=debug --defaultsFile update

this is confusing when you are trying to debug stuff, since it looks like you are requesting debug output, but you’ll not get it.

Yes, we should put better validation in the command argument parser.  The general idea is that you are running “liquibase [options] COMMAND” where in your case COMMAND is update.  Most all options go before the command unless there are arguments specific to the command itself.  Sort of how SVN command line works.

I’ll create an issue for it, though.