Доброго времени суток!
Какие условия должны быть соблюдены для генерации нового changelog, можете пожалуйста подсказать.
Добавлены новые сущности и связи, но liquibase их не видит (у меня enterprice версия)
Здравствуйте,
Для генерации скрипта вам необходимо изменить состояние сущности JPA.
Jmix Studio создает скрипты миграции в формате Liquibase changelog, сравнивая текущее состояние сущностей JPA с текущей схемой базы данных соответствующего хранилища данных. Это происходит автоматически при запуске приложения с использованием конфигурации Run/Debug. Файл changelog сохраняется в исходном коде приложения и собирается в составе бинарного артефакта.
Документация - Миграция схемы БД :: Документация Jmix
Так же вы можете самостоятельно запустить генерацию скриптов в студии, перейдите в дерево проекта Jmix и откройте контекстное меню в разделе Data Stores → Main Data Store.
С Уважением,
Никита
Пробовал (сделал по документации)
Я очистил все changelog 22-23 года, и новую он не генерирует (база остается пустой)
Студия сравнивает текущие JPA сущности и схему вашей БД. Для того чтобы студия начала генерировать новые скрипты у вас должно быть отличие между вашей схемой БД и вашей JPA моделью. После удаления changelog’ов, схема вашей БД не изменилась.
В случае если вы хотите заново сгенерировать все скрипты, вам необходимо пересоздать вашу БД.
Data Stores → Main Data Store → Recreate
Но, будьте осторожны, это приведёт к удалению ваших данных.
Я очистил базу полностью и после сделал ‘recreate’ и потом ‘generate liquibase changelog’. В проекте более 200 сущностей, но выходит то сообщение, что я отправил в прошлом ответе.
Так выглядит application.properties
А можете скачать последнюю Nightly версию Jmix Studio и попробовать воспроизвести проблему на ней?
С Уважением,
Никита
Спасибо!
Все получилось
У меня схожая проблема, IntelliJ IDEA 2023.2.5, версия Jmix 2.1.1-232 Stable . Не генерирует скрипты changelog.
Валидная лицензия jmix, enterprise.
Физически, удалил базу.
Сделал Recreate базы - “Database has been successfully recreated.”
Сделано generate liquibase changelog - “The database is already synced with model.”
На основании entity скрипты не генерирует.
Пробовал ночную сборку jmix, так же не генерирует скрипты
Здравствуйте
Включите пожалуйста DEBUG логирование в Jmix Studio (Help → Diagnostic Tools - Debug Log Settings… В диалоге добавить строку #com.haulmont.jmixstudio
) и запустите генерацию Liquibase Changelog еще раз. После этого отправьте пожалуйста нам idea.log
файл. Можно в личном сообщении.