validate-file-paths
Last updated: September 2, 2025
--validate-file-paths is a global Boolean attribute that specifies whether Liquibase checks for the existence of Liquibase Secure resource files that you've specified. The default value is false.
--validate-file-paths is similar to the parameter --strict, which validates some changelog fields and parameter syntax and checks for the existence of Liquibase Community resource files.
It is available in Liquibase Secure 5.0 and later and requires a valid Liquibase Secure license key to use.
From Liquibase Pro version 4.28.0 through 4.33, this parameter was called --pro-strict. See the change history table at the end of this article for pre-5.0 version syntax.
Uses
If you set --validate-file-paths
to true
, Liquibase checks for the existence of the following resource files:
Flow files and any nested flow files they reference
Policy checks: checks settings files, including files specified in checks package files
Native executor configuration files (
.conf
), but only if you have also set one or more corresponding native executor parameters. For example, if you have setliquibase.sqlcmd.timeout
, Liquibase checks for the existence of a configuration file (liquibase.sqlcmd.conf
by default). However, if you don't specify any native executor parameters, Liquibase doesn't check for the existence of a configuration file for that executor.Rollback scripts referenced by Formatted SQL, YAML, JSON, and XML changelogs
It is a best practice to set --validate-file-paths
to true
so that you can catch mistakes like missing or incorrect file names before you deploy your changes. If you leave strict at its default setting of false
, Liquibase ignores these requirements.
Syntax
You can set this parameter in the following ways:
Option | Syntax |
Liquibase properties file (defaults file) | liquibase.validateFilePaths: <true|false> |
Global flow file argument | globalArgs: { |
Global CLI parameter | liquibase
-- |
JVM system property (JAVA_OPTS environment variable) | Unix: JAVA_OPTS=-Dliquibase.validateFilePaths=<true|false> Windows: JAVA_OPTS=-D"liquibase.validateFilePaths"=<true|false> |
Liquibase environment variable |
|
For more information, see Working with command parameters.
Output
If you set --validate-file-paths
to true
but one of the resource files you've specified is invalid, Liquibase produces the following output:
ERROR: The file '<path/to/file.abc>' specified in '<path/to/resourcefile>'was not found. The global argument 'strict' is enabled, which validates the existence of files specified in liquibase files, such as changelogs, flowfiles, checks packages files, and more. To prevent this message, check your configurations, or disable the 'strict' setting.
Change history
Version | Changes |
---|---|
Liquibase Secure, version 5.0 | Parameter changed from --pro-strict to -- Here are the previous values from when it was --pro-strict. Liquibase properties file(defaults file) liquibase.proStrict: <true|false> Global flow file argument globalArgs: { pro-strict: "<true|false>" } Global CLI parameter liquibase --pro-strict=<true|false> update --changelog-file=example-changelog.xml JVM system property (JAVA_OPTS environment variable) Unix: JAVA_OPTS=-Dliquibase.proStrict=<true|false> Windows: JAVA_OPTS=-D"liquibase.proStrict"=<true|false> |