Maven: включение утилит в проект Java - PullRequest
0 голосов
/ 05 ноября 2019

Дело довольно простое, но я до сих пор не могу его решить:

INFO : Все «проекты», о которых я говорю, - это проекты Maven.

У меня есть определенный Java-проект, над которым я сейчас работаю. В последнее время я написал много общего кода в этом проекте. У меня также есть проект 'utils' с некоторыми утилитами Java, поэтому я решил перенести код общего назначения из моего основного проекта (назовем его 'A') в проект utils. Это было бы практично, потому что:

  1. У меня меньше помех в A
  2. Я могу повторно использовать код в других проектах, не выводя несвязанное содержимое 'A' в область действия.

Проблема в том, что utils - это, конечно, служебный проект, библиотека, если хотите. И у него нет основного класса. Когда я пытаюсь установить (mvn install) его, источники не включаются, потому что нет подходящей точки входа.

Итак, после многих попыток у меня возникает опасение, что я полностью подхожу к этой проблеменеправильно, и именно поэтому я пришел сюда. У меня нет опыта работы с Maven, за исключением простого варианта использования (например, включая внешние библиотеки из Maven Central). Поэтому мой вопрос:

Какие шаги необходимы для того, чтобы моя библиотека утилит была доступна в проекте 'A'?

Я не собираюсь устанавливать свой проект в Maven Central или любом другом удаленном хранилище. Я просто хочу, чтобы это было доступно в моем местном mvnrepo. Я знаю, что это означает, что мне придется клонировать мой проект утилит и устанавливать его везде, где я пытаюсь использовать проект «A».

EDIT 1 : я использую Java 11(openjdk11), Maven 3.6.0, IntelliJ IDEA Ultimate с плагином Maven Helper, а также GitHub, чтобы мои проекты были доступны где угодно.

Кроме того, я только что проверил, что проект 'A' правильно включает в себя jar изпроект utils и фактически добавляет его в путь к классам (но фляга пуста). Итак, проблема действительно в проекте utils.

1 Ответ

0 голосов
/ 05 ноября 2019

Maven install поместит ваш скомпилированный код в локальный репозиторий maven (.m2 / repository).

Источники упакованы плагином-источником.

mvn source:jar
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...