Сборка многомодульной библиотеки Maven - PullRequest
2 голосов
/ 21 мая 2019

Я занимаюсь разработкой библиотеки с системой Maven, которая публикуется в репозитории Nexus.В нексусе (и сборке maven) проект создает окончательный jar с именем <projectName>-<version>.jar - это именно то, что я хочу.

Теперь я решил разделить библиотеку на модули maven иследовательно, верхний уровень pom.xml имеет <packaging>pom</packaging>.Сборка также не выдает окончательный <projectName>-<version>.jar, вместо этого он выдает <moduleName>-<version>.jar для каждого модуля.

Я хочу добиться того, чтобы проект был разбит на модули и имел возможность создавать окончательный <projectName>-<version>.jar, содержащийопределенные модули.Это возможно?Возможно ли решить эту проблему при миграции на Gradle?

1 Ответ

2 голосов
/ 21 мая 2019

Когда вы решили разделить библиотеку на несколько модулей, это означает, что вы решили создать их самостоятельно.Поэтому ожидается, что каждый модуль создает свой собственный <moduleName>-<version>.jar.

. Теперь, когда вы используете созданные модули как dependencies для более крупного модуля с областью действия compile, maven автоматически добавит их к lib изпроект.

Так что в вашем случае вам не нужно менять упаковку на pom и просто добавить модули в качестве зависимости в файле pom.xml и позволить maven создать финальную флягу для вас.

Также, если вы хотите использовать упаковку pom, есть хороший вопрос здесь , который может вам помочь.

...