Package org.flywaydb.maven
Class ValidateMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.flywaydb.maven.ValidateMojo
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo
@Mojo(name="validate",
requiresDependencyResolution=TEST,
defaultPhase=PRE_INTEGRATION_TEST,
threadSafe=true)
public class ValidateMojo
extends org.apache.maven.plugin.AbstractMojo
Validate applied migrations against resolved ones (on the filesystem or classpath) to detect accidental changes that may prevent the schema(s) from being recreated exactly.
Validation fails if
- differences in migration names, types or checksums are found
- versions have been applied that aren't resolved locally anymore
- versions have been resolved that haven't been applied yet

-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected StringThe fully qualified classname of the JDBC driver to use to connect to the database.Whether to fail if a location specified in the flyway.locations option doesn't existprotected org.apache.maven.project.MavenProjectReference to the current project that includes the Flyway Maven plugin.protected org.apache.maven.settings.SettingsThe link to the settings.xmlprotected booleanWhether to skip the execution of the Maven Plugin for this module.protected StringThe JDBC url to use to connect to the database.protected StringThe user to use to connect to the database.Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoExecute(org.flywaydb.core.Flyway flyway) Executes this mojo.final voidexecute()protected booleangetBooleanProperty(String systemPropertyName, boolean mavenPropertyValue) Retrieves the value of this boolean property, based on the matching System property on the Maven property.getPluginConfiguration(Map<String, String> pluginConfiguration) protected StringgetProperty(String name) Retrieves this property from either the system or the maven properties.Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
skip
@Parameter(property="flyway.skip") protected boolean skipWhether to skip the execution of the Maven Plugin for this module.Also configurable with Maven or System Property: ${flyway.skip}
-
driver
The fully qualified classname of the JDBC driver to use to connect to the database. By default, the driver is autodetected based on the url.Also configurable with Maven or System Property: ${flyway.driver}
-
url
The JDBC url to use to connect to the database.Also configurable with Maven or System Property: ${flyway.url}
-
user
The user to use to connect to the database. (default: blank) The credentials can be specified by user/password orserverIdfrom settings.xmlAlso configurable with Maven or System Property: ${flyway.user}
-
failOnMissingLocations
Whether to fail if a location specified in the flyway.locations option doesn't exist -
settings
@Parameter(defaultValue="${settings}", readonly=true) protected org.apache.maven.settings.Settings settingsThe link to the settings.xml -
mavenProject
@Parameter(defaultValue="${project}", readonly=true, required=true) protected org.apache.maven.project.MavenProject mavenProjectReference to the current project that includes the Flyway Maven plugin.
-
-
Constructor Details
-
ValidateMojo
public ValidateMojo()
-
-
Method Details
-
doExecute
protected void doExecute(org.flywaydb.core.Flyway flyway) Executes this mojo.- Parameters:
flyway- The flyway instance to operate on.
-
getBooleanProperty
Retrieves the value of this boolean property, based on the matching System property on the Maven property.- Parameters:
systemPropertyName- The name of the System property.mavenPropertyValue- The value of the Maven property.
-
execute
public final void execute() throws org.apache.maven.plugin.MojoExecutionException- Throws:
org.apache.maven.plugin.MojoExecutionException
-
getPluginConfiguration
-
getProperty
Retrieves this property from either the system or the maven properties.- Parameters:
name- The name of the property to retrieve.- Returns:
- The property value.
nullif not found.
-