parent
--core
--processing (psvm Main([])) и core используется в нем как зависимость
Зависимости прописаны в pom-е parent. Сборка происходила в идее и мне хватало, достаточно было install core + package processing, сейчас проект нужно отдать и требуют скрипт сборки, что бы раз - и все готово. Собирается все с помощью assembly плагина, все зависимости упакованы в конечный jar. Если из parent - не видит Main из processing. Вопрос - как мне одной командой все собрать? Использовать другие плагины - не проблема, только в итоге должен получится один jar файл.
Нужно собрать все Одной командой, а не тремя. Проблема в этом. И что бы в итоге получился Один jar файл со всеми зависимостями внутри. Сейчас, если собирать проект из parent - java не находит в нем Main class.
В этих зависимостях core и processing прописаны? Хотя это неправильно, наверное, будет. Лучше для сборки либо отдельный модуль завести, либо прописать сборку в уже существующий.
Зависимости пересекаются. Было решено проект поделить на две части - отделить все, что не будет меняться от проекта к проекту (MQ, работа с бд) и бизнес логику.
Как я понимаю - нужно добавить третий модуль у которого в зависимостях будет core, processing и уже в нем определить Main([])?
Если processing зависит от core, то зависимости последнего будут притянуты и в processing, поэтому выносить их в parent я не вижу смысла. Или там еще есть модули?
Как я понимаю - нужно добавить третий модуль у которого в зависимостях будет core, processing и уже в нем определить Main([])?
Я для нетривиальных сборок отдельный проект обычно делал. Сборка в паренте — не лучший способ, думаю.
Модулей больше нет.
Сейчас со сборкой я разобрался, все собирается jar плагином, сборка происходит на parent, но есть нюанс - сборка не происходит, если в локальном репозитории не установлен core. Какой goal повесить на core, что бы при mvn package в processing происходила установка core? Уже голова кругом.
Почитай про мавен, что ли, mvn clean package в данном случае соберёт тебе коре, потом процессинг, но т.к. коре в твой локальный репозиторий не попадёт (т.к. именно в этом разница install и package), то процессинг у тебя соберётся со старым коре из локалного репозитория. Тебе нужно именно clean install. Собственно вопрос, почему ты хочешь сделать именно package?