Управление зависимостями проекта - PullRequest
0 голосов
/ 05 июня 2018

У меня есть пара java-проектов, которые зависят от одного и того же куска кода.Давайте назовем их:

Project A
Project B
ComponentX.java

Проекты настроены так:

Project A > ComponentX.java
Project B > ComponentX.JAR

Эта настройка, когда Project B содержит jar-файл ComponentX, неудобна.Каждый раз, когда я вносю изменения в ComponentX.java, мне нужно помнить, чтобы экспортировать Jar в Project B. Это также затрудняет отладку Project B.Должен быть лучший способ, я просто не знаю, что гуглить.Я использую Затмение.Я использую Maven, поэтому любое решение, использующее это, будет в порядке, хотя я надеюсь, что есть простое решение на основе Eclipse.

Я предполагаю, что мне нужно будет переместить componentX в его собственный проект и каким-то образом сделатьдва других зависят от этого.

Ответы [ 2 ]

0 голосов
/ 03 августа 2018

Итак, у меня был момент с лампочкой.Любой проект maven может быть импортирован в любой другой проект maven точно так же, как вы импортировали бы любую другую зависимость.Кажется очевидным, но я только когда-либо импортировал библиотеки, написанные другими людьми.

Так что, если у вас есть три проекта:

  • WebApp
  • DesktopApp
  • Зависимость

Там, где и WebApp, и Desktop должны ссылаться на Зависимость.Это может также применяться в случае, когда в двух проектах повторяется код, просто извлеките его в свой собственный проект и удалите его из обоих.

Просто сделайте проект Dependency проектом Maven, щелкнув правой кнопкой мыши> Configure> Convertв Maven Project.Вы получите файл .pom с чем-то вроде этого вверху:

<groupId>Dependency</groupId>
<artifactId>Dependency</artifactId>
<version>0.0.1-SNAPSHOT</version>

Затем все, что вам нужно сделать, это добавить его в качестве зависимости от .pom любого другого проекта, которому требуется доступ к нему:

<dependency>
    <groupId>Dependency</groupId>
    <artifactId>Dependency</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

Вот и все

0 голосов
/ 05 июня 2018

Скорее всего, вы хотите создать новый библиотечный проект, который будет использоваться как Проектом А, так и Проектом Б в качестве стандартного Maven <dependency>.

В Интернете доступно несколько руководств.Если все ваши проекты являются частью одной многомодульной сборки Maven, вы можете взглянуть на Создание руководства по многомодульному проекту на spring.io .

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