NEW: Liquibase Fundamentals Certification

Hey everyone! We just launched the first Liquibase certification at Liquibase University - Liquibase Fundamentals! If you want to learn more about Liquibase or verify your skills, sign up for free at https://learn.liquibase.com.

5 Likes

I think its a great time to pick up a devops / db automation certificate!

Hi Kevin,
I just completed my certification but I am not able to add it LinkedIn. I can not find any Credential URL or Credential ID to link to my LinedIn profile. I can download and see it anyway, the certification looks good :blush:

1 Like

Welcome @abhixkj, I will work with the head of our LMS to help out with getting the cert linked in.

1 Like

Congratulations on completing the certification! I’ll have Ronak reach out and help you with the credentialing in LinkedIn.

1 Like

@ronak is fast! You beat me to it. Thanks!

1 Like

@AristyCat has a good idea what it may be. Standby.

Hello @abhixkj!

I was able to verify that the system did propagate your certification. An email would have been sent to your registered email address. A lot of times this email ends up in a Spam or Junk folder. If you are using Microsoft Outlook, also check your “Other” folder. Here is the receipient view of your certification: See Accreditation .

2 Likes

Hey, thanks guys for the fast response :raised_hands:, I was able to add it now. It was sent via a separate mail from Accredible. :v:

1 Like

Awesome @abhixkj! Great work, thanks for completing the Fundamentals course!

Hello All

I am having trouble in Liquibase Fundamental Module-3 where I used mvn liquibase:update and it failed to update.

My pom.xml file modified according the given instructions and I am having troubleshooting the following issue:

Failed to execute goal org.liquibase:liquibase-maven-plugin:4.0.0:update (default-cli) on project Liquih2-app: Execution default-cli of goal org.liquibase:liquibase-maven-plugin:4.0.0:update failed: Plugin org.liquibase:liquibase-maven-plugin:4.0.0 or one of its dependencies could not be resolved: Could not find artifact h2:h2:jar:1.0-SNAPSHOT -> [Help 1]

I am looking forward to receiving your reply soon.

Sincerely
Sar Kong

Dear Alll
I am having a problem with Module-3 mvn liquibase:update with pom.xml complaining - version can neither be null, empty nor blank for h2.

I am grantful if you would shading some light on my problem, please.

I am looking forward to receiving your reply soon.

Many thanks in advance.

Yours sincerly
Sar Kong
sar.kong@gmail.com

The following is my pom.xml


4.0.0
com.my-group.app
Liquih2-app
1.0-SNAPSHOT




org.liquibase
liquibase-maven-plugin
4.0.0

liquibase.properties



h2
h2






The following output with debug mode:X

C:\Users\oracle\app\MavenDBType\MavenH2>mvn -X liquibase:update
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: C:\Program Files\apache-maven-3.6.3\bin…
Java version: 15, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk-15
Default locale: en_AU, platform encoding: Cp1252
OS name: “windows 10”, version: “10.0”, arch: “amd64”, family: “windows”
[DEBUG] Created new class realm maven.api
[DEBUG] Importing foreign packages into class realm maven.api
[DEBUG] Imported: javax.annotation.* < plexus.core
[DEBUG] Imported: javax.annotation.security.* < plexus.core
[DEBUG] Imported: javax.enterprise.inject.* < plexus.core
[DEBUG] Imported: javax.enterprise.util.* < plexus.core
[DEBUG] Imported: javax.inject.* < plexus.core
[DEBUG] Imported: org.apache.maven.* < plexus.core
[DEBUG] Imported: org.apache.maven.artifact < plexus.core
[DEBUG] Imported: org.apache.maven.classrealm < plexus.core
[DEBUG] Imported: org.apache.maven.cli < plexus.core
[DEBUG] Imported: org.apache.maven.configuration < plexus.core
[DEBUG] Imported: org.apache.maven.exception < plexus.core
[DEBUG] Imported: org.apache.maven.execution < plexus.core
[DEBUG] Imported: org.apache.maven.execution.scope < plexus.core
[DEBUG] Imported: org.apache.maven.lifecycle < plexus.core
[DEBUG] Imported: org.apache.maven.model < plexus.core
[DEBUG] Imported: org.apache.maven.monitor < plexus.core
[DEBUG] Imported: org.apache.maven.plugin < plexus.core
[DEBUG] Imported: org.apache.maven.profiles < plexus.core
[DEBUG] Imported: org.apache.maven.project < plexus.core
[DEBUG] Imported: org.apache.maven.reporting < plexus.core
[DEBUG] Imported: org.apache.maven.repository < plexus.core
[DEBUG] Imported: org.apache.maven.rtinfo < plexus.core
[DEBUG] Imported: org.apache.maven.settings < plexus.core
[DEBUG] Imported: org.apache.maven.toolchain < plexus.core
[DEBUG] Imported: org.apache.maven.usability < plexus.core
[DEBUG] Imported: org.apache.maven.wagon.* < plexus.core
[DEBUG] Imported: org.apache.maven.wagon.authentication < plexus.core
[DEBUG] Imported: org.apache.maven.wagon.authorization < plexus.core
[DEBUG] Imported: org.apache.maven.wagon.events < plexus.core
[DEBUG] Imported: org.apache.maven.wagon.observers < plexus.core
[DEBUG] Imported: org.apache.maven.wagon.proxy < plexus.core
[DEBUG] Imported: org.apache.maven.wagon.repository < plexus.core
[DEBUG] Imported: org.apache.maven.wagon.resource < plexus.core
[DEBUG] Imported: org.codehaus.classworlds < plexus.core
[DEBUG] Imported: org.codehaus.plexus.* < plexus.core
[DEBUG] Imported: org.codehaus.plexus.classworlds < plexus.core
[DEBUG] Imported: org.codehaus.plexus.component < plexus.core
[DEBUG] Imported: org.codehaus.plexus.configuration < plexus.core
[DEBUG] Imported: org.codehaus.plexus.container < plexus.core
[DEBUG] Imported: org.codehaus.plexus.context < plexus.core
[DEBUG] Imported: org.codehaus.plexus.lifecycle < plexus.core
[DEBUG] Imported: org.codehaus.plexus.logging < plexus.core
[DEBUG] Imported: org.codehaus.plexus.personality < plexus.core
[DEBUG] Imported: org.codehaus.plexus.util.xml.Xpp3Dom < plexus.core
[DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlPullParser < plexus.core
[DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlPullParserException < plexus.core
[DEBUG] Imported: org.codehaus.plexus.util.xml.pull.XmlSerializer < plexus.core
[DEBUG] Imported: org.eclipse.aether.* < plexus.core
[DEBUG] Imported: org.eclipse.aether.artifact < plexus.core
[DEBUG] Imported: org.eclipse.aether.collection < plexus.core
[DEBUG] Imported: org.eclipse.aether.deployment < plexus.core
[DEBUG] Imported: org.eclipse.aether.graph < plexus.core
[DEBUG] Imported: org.eclipse.aether.impl < plexus.core
[DEBUG] Imported: org.eclipse.aether.installation < plexus.core
[DEBUG] Imported: org.eclipse.aether.internal.impl < plexus.core
[DEBUG] Imported: org.eclipse.aether.metadata < plexus.core
[DEBUG] Imported: org.eclipse.aether.repository < plexus.core
[DEBUG] Imported: org.eclipse.aether.resolution < plexus.core
[DEBUG] Imported: org.eclipse.aether.spi < plexus.core
[DEBUG] Imported: org.eclipse.aether.transfer < plexus.core
[DEBUG] Imported: org.eclipse.aether.version < plexus.core
[DEBUG] Imported: org.fusesource.jansi.* < plexus.core
[DEBUG] Imported: org.slf4j.* < plexus.core
[DEBUG] Imported: org.slf4j.event.* < plexus.core
[DEBUG] Imported: org.slf4j.helpers.* < plexus.core
[DEBUG] Imported: org.slf4j.spi.* < plexus.core
[DEBUG] Populating class realm maven.api
[INFO] Error stacktraces are turned on.
[DEBUG] Message scheme: color
[DEBUG] Message styles: debug info warning error success failure strong mojo project
[DEBUG] Reading global settings from C:\Program Files\apache-maven-3.6.3\bin…\conf\settings.xml
[DEBUG] Reading user settings from C:\Users\oracle.m2\settings.xml
[DEBUG] Reading global toolchains from C:\Program Files\apache-maven-3.6.3\bin…\conf\toolchains.xml
[DEBUG] Reading user toolchains from C:\Users\oracle.m2\toolchains.xml
[DEBUG] Using local repository at C:\Users\oracle.m2\repository
[DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10.0 for C:\Users\oracle.m2\repository
[INFO] Scanning for projects…
[DEBUG] Extension realms for project com.my-group.app:h2:jar:1.0-SNAPSHOT: (none)
[DEBUG] Looking up lifecycle mappings for packaging jar from ClassRealm[plexus.core, parent: null]
[DEBUG] Resolving plugin prefix liquibase from [org.apache.maven.plugins, org.codehaus.mojo]
[DEBUG] Resolved plugin prefix liquibase to org.liquibase:liquibase-maven-plugin from POM com.my-group.app:h2:jar:1.0-SNAPSHOT
[DEBUG] === REACTOR BUILD PLAN ================================================
[DEBUG] Project: com.my-group.app:h2:jar:1.0-SNAPSHOT
[DEBUG] Tasks: [liquibase:update]
[DEBUG] Style: Regular
[DEBUG] =======================================================================
[INFO]
[INFO] ------------------------< com.my-group.app:h2 >-------------------------
[INFO] Building h2 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[DEBUG] Resolving plugin prefix liquibase from [org.apache.maven.plugins, org.codehaus.mojo]
[DEBUG] Resolved plugin prefix liquibase to org.liquibase:liquibase-maven-plugin from POM com.my-group.app:h2:jar:1.0-SNAPSHOT
[DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy]
[DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean]
[DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy]
[DEBUG] === PROJECT BUILD PLAN ================================================
[DEBUG] Project: com.my-group.app:h2:1.0-SNAPSHOT
[DEBUG] Dependencies (collect):
[DEBUG] Dependencies (resolve): [test]
[DEBUG] Repositories (dependencies): [central (https://repo.maven.apache.org/maven2, default, releases)]
[DEBUG] Repositories (plugins) : [central (https://repo.maven.apache.org/maven2, default, releases)]
[DEBUG] -----------------------------------------------------------------------
[DEBUG] Goal: org.liquibase:liquibase-maven-plugin:4.0.0:update (default-cli)
[DEBUG] Style: Regular
[DEBUG] Configuration: <?xml version="1.0" encoding="UTF-8"?>

{liquibase.changeLogDirectory}</changeLogDirectory> <changeLogFile>{liquibase.changeLogFile}
{liquibase.changelogCatalogName}</changelogCatalogName> <changelogSchemaName>{liquibase.changelogSchemaName}
{liquibase.changesToApply}</changesToApply> <clearCheckSums default-value="false">{liquibase.clearCheckSums}
{liquibase.contexts}</contexts> <databaseChangeLogLockTableName>{liquibase.databaseChangeLogLockTableName}
{liquibase.databaseChangeLogTableName}</databaseChangeLogTableName> <databaseClass>{liquibase.databaseClass}
{liquibase.defaultCatalogName}</defaultCatalogName> <defaultSchemaName>{liquibase.defaultSchemaName}
{liquibase.driver}</driver> <dropFirst default-value="false">{liquibase.dropFirst}
{liquibase.emptyPassword}</emptyPassword> <includeArtifact default-value="true">{liquibase.includeArtifact}
{liquibase.includeTestOutputDirectory}</includeTestOutputDirectory> <labels default-value="">{liquibase.labels}
{liquibase.liquibaseProLicenseKey}</liquibaseProLicenseKey> <logging default-value="INFO">{liquibase.logging}
{liquibase.outputDefaultCatalog}</outputDefaultCatalog> <outputDefaultSchema default-value="false">{liquibase.outputDefaultSchema}
{liquibase.outputFileEncoding}</outputFileEncoding> <password>{liquibase.password}
{project}</project> <promptOnNonLocalDatabase default-value="true">{liquibase.promptOnNonLocalDatabase}
liquibase.properties
{liquibase.propertyFileWillOverride}</propertyFileWillOverride> <propertyProviderClass>{liquibase.propertyProviderClass}
{liquibase.server}</server> <skip default-value="false">{liquibase.skip}
{liquibase.toTag}</toTag> <url>{liquibase.url}
{liquibase.username}</username> <verbose default-value="false">{liquibase.verbose}

[DEBUG] =======================================================================
[DEBUG] Dependency collection stats: {ConflictMarker.analyzeTime=42900, ConflictMarker.markTime=59800, ConflictMarker.nodeCount=1, ConflictIdSorter.graphTime=13500, ConflictIdSorter.topsortTime=395300, ConflictIdSorter.conflictIdCount=0, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=1080300, ConflictResolver.conflictItemCount=0, DefaultDependencyCollector.collectTime=92200, DefaultDependencyCollector.transformTime=2781500}
[DEBUG] com.my-group.app:h2:jar:1.0-SNAPSHOT
[INFO]
[INFO] — liquibase-maven-plugin:4.0.0:update (default-cli) @ h2 —
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.631 s
[INFO] Finished at: 2020-10-03T16:16:04+10:00
[INFO] ------------------------------------------------------------------------
[ERROR] version can neither be null, empty nor blank
java.lang.IllegalArgumentException: version can neither be null, empty nor blank
at org.apache.commons.lang3.Validate.notBlank (Validate.java:454)
at org.apache.maven.artifact.ArtifactUtils.notBlank (ArtifactUtils.java:107)
at org.apache.maven.artifact.ArtifactUtils.key (ArtifactUtils.java:97)
at org.apache.maven.ReactorReader.findArtifact (ReactorReader.java:101)
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve (DefaultArtifactResolver.java:306)
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts (DefaultArtifactResolver.java:229)
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact (DefaultArtifactResolver.java:207)
at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom (DefaultArtifactDescriptorReader.java:240)
at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor (DefaultArtifactDescriptorReader.java:171)
at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.resolveCachedArtifactDescriptor (DefaultDependencyCollector.java:541)
at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.getArtifactDescriptorResult (DefaultDependencyCollector.java:524)
at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:412)
at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency (DefaultDependencyCollector.java:365)
at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process (DefaultDependencyCollector.java:352)
at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.collectDependencies (DefaultDependencyCollector.java:254)
at org.eclipse.aether.internal.impl.DefaultRepositorySystem.collectDependencies (DefaultRepositorySystem.java:284)
at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolveInternal (DefaultPluginDependenciesResolver.java:205)
at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve (DefaultPluginDependenciesResolver.java:152)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.createPluginRealm (DefaultMavenPluginManager.java:404)
at org.apache.maven.plugin.internal.DefaultMavenPluginManager.setupPluginRealm (DefaultMavenPluginManager.java:374)
at org.apache.maven.plugin.DefaultBuildPluginManager.getPluginRealm (DefaultBuildPluginManager.java:234)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:105)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:64)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:564)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR]

Welcome @sarkong!
This error message concerned me:

Don’t think this is a liquibase problem but a config issue of maven. To diagnose could you your pom.xml and settings.xml (please redact password and user id).

Ronak