2017-02-22 69 views
0

我已經下載了Liquibase的Oracle插件,我用maven構建了它,並在Liquibase主頁的/ lib目錄中複製了liquibase-oracle-3.3-SNAPSHOT.jar。 我已經添加了命名空間到changelog文件,在文件報道,這是我的changelog文件:通過CLILiquibase中用於Oracle插件的ChangeSet總是空的

<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> 

更新操作總是成功的,但沒有發生在DB:行中的DATABASECHANGELOG表指此操作正確,但在說明欄中報告爲「空」。

我還將liquibase-oracle-3.3-SNAPSHOT.jar添加到liquibase.properties文件中的類路徑中,但它沒用。 在DATABASECHANGELOG表中使用特定Oracle插件標記跟蹤的每個changeSet具有相同的校驗和(7:d41d8cd98f00b204e9800998ecf8427e),並在DESCRIPTION中報告「空」。

有什麼想法?

回答

0

我發現是什麼問題:我推出的CLI命令

java -jar liquibase.jar --changeLogFile=myChangeLog.xml update 

但始終變更導致空:這是因爲liquibase.jar沒有從liquibase甲骨文-3.3-SNAPSHOT.jar上課。我添加了liquibase.bat PATH環境變量和新命令是

liquibase --changeLogFile=myChangeLog.xml update 

它工作正常。