Какие составляющие входят в ваш композитный проект, чтобы попробовать воспроизвести?
Если у вас имеется sample-проект, который вы можете предоставить, то было бы замечательно.
Проект достаточно емкий в плане используемых аддонов, включая коммерческие (jmix-cuba, reports, search, bpm, charts, dashboards, imap).
Но есть подозрение в сторону charts, dashboards. Собственных собственных кастмных WidgetSet у нас в проекте нет, а compileWidgets тянется именно от них.
За сегодня перетянул на 1.6.1 пару наших внутренних аддонов, которые используются в этом решении - там проблем со сборкой на JDK 11 нет.
Хотя в них есть зависимость jmix-cuba и в одном из них IMAP.
И проекты аддонов тоже композитные (аддон + тестовое приложение-ранннер)
Плюс ранее на 1.5.5 ловили в этом проекте проблему (Проблема сборки bootWar композитного проекта в GitLab CI) и там опосредованно тоже касалось задачи compileWidgets.
При сборке основного функционального аддона она занимает больше всего времени при и в итоге это при водило к тому, что в WAR приложения persistence.xml собирался некомплектный.
Но теперь на 1.6.1 и JDK 11 сам основной функциональный аддон даже при отдельной его остается вообще без persistence.xml и orm.xml.
Причем и в конвейере GitLab и при локальной сборке в Idea + Studio картина одинаковая.
И замена JDK на 17 в обоих случаях решает.
Сегодня несколько раз переключался между проектами и ветками проблемного проекта (на Jmix 1.5.5 и 1.6.1). При очередном открытии проекта случайно заметил среди прочих всплывающих nitification в Idea уведомление типа “JPA facet not found/detected”…
Появляется редко и не прогнозируемо. К сожалению, не заскринил, а после закрытия Idea за несколько открытий/закрытий проекта повторить не смог.
Уведомление информационное, исчезающее автоматом. Проект собрался без persistence.xml и orm.xml. Хотя при сборке нет ни каких ошибок и каких-то сообщений, которые обратили бы на себя внимание.
Судя про всему, при открытии проекта после миграции на 1.6.1 такое же исчезающее уведомление было и осталось незамеченным.
Далее собрали основной функциональный аддон и опубликовали в локальный maven и Package Registry GitLab.
Собрали основное приложение и поймали проблему.
После переключения JDK проекта на 17, естественно убили артефакт основного функционального аддона из локального maven и Package Registry.
Видимо при очередном открытии проекта проблемы с JPA facet не возникло и на JDK 17 все собралось, опубликовалось в maven заработало.
Теперь бы снова поймать момент с “JPA facet not found” при открытии проекта и понять причину возникновения… Ранее такого никогда не встречал.
Сейчас локально нормально собирается на JDK 11, в тестовом конвейере в Gab пока оставили на JDK 17 и тоже все ок.
Когда снова увижу уведомление - сделаю скрип и постараюсь отложить логи Idea.
Не уверен, что эта ошибка как-то вообще влияет на сборку, ведь сборку проводит gradle и от настроек/фасетов он зависеть не должен. Тем более если в gitlab все то же самое…
Коллеги подсказывают, что такая ошибка (с фасетами) может возникать, когда проект сначала открывается в ultimate идее, а потом в community, где чего-то нет. У вас, случаем, файлы проекта идеи не добавлены в гит?
По поводу основной проблемы топика:
Чтобы что-то сказать, нужно смотреть хотя-бы логи сборки, в результате которой отсутствуют persistence.xml и orm.xml
Без этого, увы, предположить, почему именно так происходит, не получается…
С этим разобрались. В gitlab проблема была в том, что при сборке в нем подхватывался собранный основной фукциональный аддон из Package Registry GitLab. А в Package Registry он опубликовался уже без persistence.xml и orm.xml как раз с локального ПК.
В GitLab сейчас все гладко.
У вас, случаем, файлы проекта идеи не добавлены в гит?
Нет, там все по типовому gitignore. В git из идейных файлов только encoding.xml.
Переключения ultimate/community не было, а вот открытие проекта ultimate 2023.3 / 2024.2 - это да…
Но, похоже что действительно проблема где-то вокруг самой Idea…
Если присмотреться, то если выскочил этот нотификейшен про JPA facets, то Идею как-то “ведет”.
Например, в панели Jmix в перечне подпроектов стартер аддона может отображаться наряду с проектом самого аддона. Как будто импорт проекта gradle не завершился, хотя ни каких признаков активных процессов в Idea нет.
Плюс за пятницу и за сегодня обновленный на 1.6.1 проект получили еще на 2х ПК - там пока все гладко.
Прошу прощения за, скорее всего, ложную тревогу. Пойду для начала старые версия Idea у себя поудаляю…