Я использую Autobase (который построен поверх Liquibase), поскольку он (последний раз, когда я проверял) позволяет автоматически проверять/применять ваши миграции при запуске приложения. С плагином Liquibase я должен сделать это сам в коде init init. Это позволяет вам установить источник данных dbCreate = none
и позволить Autobase обрабатывать DB в форме.
Это означает, что вам нужно написать миграцию каждый раз, когда вы добавляете свойство в класс домена, но я думаю, что это хорошо, потому что вы задумываетесь о том, что должно быть на самом деле лежащим в основе полем, а не просто позволяя Hibernate угадать.
Я думаю, что некоторые из плагинов Autobase (например, groovy dsl) переносятся обратно в плагин Liquibase, но вам нужно будет это проверить.
Единственным недостатком Autobase является отсутствие хорошей документации. Есть некоторые, но это еще не все. К счастью, dsl совпадает с тегами Liquibase xml, поэтому вы можете работать с большинством из них.
просто смотрел страницу autobase - теперь она устарела в пользу Liquibase –
Я не думаю, что Liquibase имеет возможность обновлять БД при запуске приложения, что является действительно хорошей функцией ,Я все равно буду использовать Autobase до тех пор, пока миграции не станут частью ядра Grails (который запланирован на Grails 1.4). – leebutts
@leebutts. На момент написания этой статьи плагин dbMigrations (преемник плагина Liquibase) _ поддерживает обновление базы данных при запуске приложения. – cdeszaq