We have a liquibase command that looks something like this:

```sh
/liquibase/liquibase \
       --driver=org.postgresql.Driver \
       --changeLogFile="db.changelog-master.xml" \
       --url=<redacted> \
       --username=<redacted> \
       --password=<redacted> \
       update \
       -Dcoreschema="${core_schema}"
```

After upgrading the CLI from 4.3.3 to 4.4.0, it fails with the following error:

```
Unexpected argument(s): -Dcoreschema=public

For detailed help, try 'liquibase --help' or 'liquibase <command-name> --help'
```

Since the release notes state "this release should be 100% backwards compatible", I expect this is an oversight? Or is there a replacement for the `-Dproperty=value` syntax? I haven't found one looking through `--help` and the [property substitution docs](https://docs.liquibase.com/concepts/basic/changelog-property-substitution.html) at least.

The syntax can also still be found on https://docs.liquibase.com/tools-integrations/cli/home.html:

![image](https://user-images.githubusercontent.com/2620907/122090597-36d63400-ce08-11eb-92e8-d320cd5c5baa.png)


try {
                        if (e.getCause() instanceof ValidationFailedException) {
                            ((ValidationFailedException) e.getCause()).printDescriptiveError(outputStream);
                        } else {
                            if (!Main.runningFromNewCli) {
                                if (main.outputsLogMessages) {
                                    Scope.getCurrentScope().getUI().sendErrorMessage((String.format(coreBundle.getString("unexpected.error"), message)), e);
                                } else {
                                    Scope.getCurrentScope().getUI().sendMessage((String.format(coreBundle.getString("unexpected.error"), message)));
                                    Scope.getCurrentScope().getUI().sendMessage(coreBundle.getString("for.more.information.use.loglevel.flag"));
                                    
                                    Scope.getCurrentScope().getLog(getClass()).severe((String.format(coreBundle.getString("unexpected.error"), message)), e);
                                }
                            }
                        }
                    } catch (IllegalFormatException e1) {
                        if (Main.runningFromNewCli) {
                            throw e1;
                        }
                        e1.printStackTrace();
                    }
                    throw new LiquibaseException(String.format(coreBundle.getString("unexpected.error"), message), e);
                }
                if (isHubEnabled(main.command) &&
                        HubConfiguration.LIQUIBASE_HUB_API_KEY.getCurrentValue() != null &&
                        !Scope.getCurrentScope().getSingleton(HubServiceFactory.class).isOnline()) {
                    Scope.getCurrentScope().getUI().sendMessage("WARNING: The command " + main.command + " operations were not synced with your Liquibase Hub account because: " + StringUtil.lowerCaseFirst(Scope.getCurrentScope().getSingleton(HubServiceFactory.class).getOfflineReason()));
                }