所以我在Google,bing,duckduckgo和stackoverflow上进行了高低搜索,但似乎找不到解决我问题的答案。
已安装jdk 8 64位Windows(Windows Server 2012和Windows 10)
已安装Oracle Instant Client 12.2.0.1.0 64位Windows
已安装Oracle SQL Developer 18.2.0.183.1748 64位Windows
已安装的liquibase 3.6.2
修复了系统路径变量,因此所有这些应用程序都在路径中 在cmd窗口中,java返回帮助信息,liquibase返回:
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(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 3 more
我在做什么错?我在Windows 10和Windows Server 2012上都收到此错误。 预先感谢!
答案 0 :(得分:5)
似乎liquibase 3.6.2 zip文件(我从https://download.liquibase.org/download/?frm=n下载了liquibase-3.6.2-bin.zip
)不包含slf4j-api jar文件,在该文件中定义了相关的类。
您应该从https://www.slf4j.org/download.html下载slf4j-1.7.25.zip
,解压缩该zip文件,然后将slf4j-api-1.7.25.jar
复制到liquibase \ lib目录中。