Command line missing required dependencies in 3.6.0 tarball
Activity

Prasad Thiriveedi July 5, 2018 at 4:24 PM
Here is how I made it work for me.
Place mysql-connector-java-<version>-bin.jar into liquibase<version> folder.
Place missing below 3 jars into lib folder.
logback-core-1.2.3.jar
logback-classic-1.2.3.jar
slf4j-api-1.7.25.jar
I executed liquibase command ,Once complete above two steps.
Please see attached screenshots of my folder structure and liquidate command. You can learn more here
It worked for me.
Hope it helps.

Anthony Mastrean May 16, 2018 at 4:07 PM
Related to

Terry Schutte April 20, 2018 at 4:02 PM
It appears 3.6.1 is still missing slf4j-api-1.7.25 in the lib folder and I still receive an error invoking liquibase via cli.
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at liquibase.logging.core.Slf4JLoggerFactory.getLog(Slf4JLoggerFactory.java:9)
at liquibase.logging.LogService.getLog(LogService.java:39)
at liquibase.integration.commandline.Main.<clinit>(Main.java:67)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more
Downloaded tarball from here:
https://github.com/liquibase/liquibase/releases/download/liquibase-parent-3.6.0/liquibase-3.6.0-bin.tar.gz
Extracted to directory on my system. Using java 8. Ran the command line and got this output:
In previous versions, this was the output:
One can get a bit further by placing logback-core into the lib folder. With that in place the error is now different:
The 3 missing jars that got things working for me are:
which now gives the following output:
But this version apparently does not have usage info which is quite helpful to have.