Запуск проекта maven с зависимостями затмения вне затмения - PullRequest
1 голос
/ 26 августа 2011

Я разрабатываю проект maven с несколькими модулями в eclipse. Родитель pom.xml объявляет все подмодули, и каждый подмодуль содержит pom.xml со ссылкой на родителя. Некоторые подмодули зависят от других подмодулей, поэтому я добавил их как зависимость (m2e находит их при поиске зависимостей). Однако, когда я пытаюсь запустить субмодуль вне затмения, используя причал (mvn -pl submodule jetty:run), я получаю сообщение об ошибке, что в нем отсутствуют другие субмодули.

Другими словами, и более подробно: есть родитель, sub1 и sub2. sub2 зависит от sub1. Я добавил

<modules>
  <module>sub1</module>
  <module>sub2</module>
</modules>

у родителя и

<parent>
  <groupId>group</groupId>
  <artifactId>parent</artifactId>
  <version>0.0.1-SNAPSHOT</version>
</parent>

И в sub1, и в sub2, и

<dependency> 
  <groupId>group.parent</groupId>
  <artifactId>sub1</artifactId>
  <version>0.0.1-SNAPSHOT</version>
</depdency>

в sub2.

Когда я бегу:

mvn -pl sub2 jetty:run

Я получаю:

[INFO] Failed to resolve artifact.

Missing:
----------
1) group.parent:sub1:jar:0.0.1-SNAPSHOT

Как мне заставить maven найти зависимости подмодуля?

1 Ответ

2 голосов
/ 26 августа 2011

Вы пытались запустить mvn install в родительском проекте перед запуском Jetty в подмодуле? Это установит ваши банки в ваш локальный репозиторий Maven, после чего Maven сможет их найти.

(Или я мог бы неправильно понять сложность вашего вопроса, в таком случае: поправьте меня.)

...