2017-04-04 39 views
3

我試圖添加一個字段到我的實體作爲CLOB。使用JHipster CLI時,添加它並不成問題。修改實體後jijsters liquibase驗證錯誤

現在,當我嘗試啓動我的應用程序得到以下驗證錯誤從liquibase:

liquibase.exception.ValidationFailedException: Validation Failed: 
    1 change sets check sum 
      config/liquibase/changelog/20170221193921_xxxxxxxx.xml::20170221193921-1::jhipster was: 7:d8b3f42d8d4d523c7b14f93b4c7657c7 but is now: 7:a2a365179a0d231c2771ebd79f51b1fc 

我也試過如下:

./mvnw liquibase:clearCheckSums 

結果是BUILD SUCCESS

我也嘗試過./mvnw liquibase:update和updateSQL,結果相同。

有誰能告訴我我的問題與JHipster有什麼關係嗎?

+0

你不應該更新你執行的'changeset'並且必須創建另一個或者只是簡單的擦拭你的db並重新創建它。 –

+0

面臨同樣的問題,並不確定什麼是正確的方法?你有沒有找到解決方案 – AutoMEta

回答

3

嘗試在執行你的數據庫以下查詢: UPDATE DATABASECHANGELOG SET MD5SUM = NULL WHERE ID = '你的表ID';

您的表ID在這種情況下似乎是= 20170221193921-1。

+0

這是一個不好的方法,它不是'liquibase'的方式,請閱讀做數據庫遷移的概念。 –

+1

同意,** liquibase方法**是通過'liquibase:clearCheckSums'清除校驗和,因此liquibase會在下次運行中重新計算它們,但是在與Jhipster一起工作時它不會清除'em。 這是我遇到的工作。 –

+0

我和@ krypto88有類似的情況.'liquibase:clearCheckSums'在清除liquibase.exception.ValidationFailedException:驗證失敗時不起作用。那麼如何擺脫它? – Cristian