Java ClassNotFoundException在命令行上运行Liquibase standalone

Java ClassNotFoundException在命令行上运行Liquibase standalone,java,liquibase,Java,Liquibase,我想在命令行上运行Liquibase standalone(即不带“安装”)。然而,无论我尝试了什么,我都得到了java.lang.ClassNotFoundException:ch.qos.logback.core.Context或其他一些logback类 我检查了Liquibasepom.xml,以确定它需要哪些依赖项,并相应地提供它们 1。尝试 java -jar liquibase-core-3.8.6.jar \ -cp jaxb-api-2.3.0.jar:snakeyam

我想在命令行上运行Liquibase standalone(即不带“安装”)。然而,无论我尝试了什么,我都得到了
java.lang.ClassNotFoundException:ch.qos.logback.core.Context
或其他一些logback类

我检查了Liquibase
pom.xml
,以确定它需要哪些依赖项,并相应地提供它们

1。尝试

java -jar liquibase-core-3.8.6.jar \
     -cp jaxb-api-2.3.0.jar:snakeyaml-1.24.jar:slf4j-api-1.7.28.jarlogback-core-1.2.3.jar::logback-classic-1.2.3.jar \
     --classpath=backend/target/mywar.war \
     --changeLogFile=db/changelog/db.changelog-master.xml
2。以及进一步的尝试


据我所知,
-cp
java
命令的常规类路径参数,
--classpath
是根据的Liquibase的程序参数。然而,我仍然尝试了第一次尝试的各种参数组合,但没有成功。

Arghh,愚蠢的我。随着IDE的魔力,这些天你忘记了如何在CLI上启动Java程序

您不能将
-jar
-cp
组合在一起,也就是说,您不能将其他jar与
-jar
放在类路径上


所以,要解决这个问题,您需要
java-cp。。。liquibase.integration.commandline.Main--classpath=…

我的理解是,首先安装liquibase,以便可以将其添加到classpath中,然后运行命令liquibase[options][command],可能是
-cp
参数中的一个输入错误<代码>:在
slf4j-api-1.7.28.jar
logback-core-1.2.3.jar之间缺失。jar
看起来类似。liquibase[options][command]对应于liquibase--classpath=mysql-connector-java-5.1.21-bin.jar--url=“jdbc:mysql://”--changeLogFile=db.changelog-1.0.xml--username=--password=必须指定上述选项。