Database Liquibase中Oracle插件的变更集始终为空
我下载了用于Liquibase的Oracle插件,我用maven构建了它,并在Liquibase home的/lib目录中复制了Liquibase-Oracle-3.3-SNAPSHOT.jar。 我已将名称空间添加到变更日志文件中,如文档中所述,这是我的变更日志文件:Database Liquibase中Oracle插件的变更集始终为空,database,oracle,liquibase,changelog,Database,Oracle,Liquibase,Changelog,我下载了用于Liquibase的Oracle插件,我用maven构建了它,并在Liquibase home的/lib目录中复制了Liquibase-Oracle-3.3-SNAPSHOT.jar。 我已将名称空间添加到变更日志文件中,如文档中所述,这是我的变更日志文件: <databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XM
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ora="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd
http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd">
<changeSet author="myAuthor" id="xxx">
<ora:encapsulateTableWithView tableName="TABLENAME"/>
</changeSet>
</databaseChangeLog>
通过CLI执行的更新操作始终成功,但在DB上未发生任何操作:DATABASECHANGELOG表中引用此操作的行是正确的,但在“说明”列中报告“空”
我还将liquibase-oracle-3.3-SNAPSHOT.jar添加到liquibase.properties文件中的类路径中,但它没有用。
在DATABASECHANGELOG表中使用特定Oracle插件标记跟踪的每个变更集都具有相同的校验和(7:d41d8cd98f00b204e9800998ecf8427e),并在说明中报告“空”
有什么想法吗?我发现了问题所在:我是通过CLI命令启动的
java -jar liquibase.jar --changeLogFile=myChangeLog.xml update
但是变更集的结果总是空的:这是因为liquibase.jar没有从liquibase-oracle-3.3-SNAPSHOT.jar获取类。我在PATH中的环境变量处添加了liquibase.bat,新命令是
liquibase --changeLogFile=myChangeLog.xml update
而且效果很好