2013-10-05 2 views
0

У меня есть два проекта Maven. Один из них должен быть зависим от другого. Я использую IntelliJ, и я попытался щелкнуть правой кнопкой мыши по project1> Open Module Settings, а на вкладке зависимостей я нажал на символ +, чтобы добавить каталог или jar-зависимость. Пока все хорошо, когда я пытаюсь импортировать пакеты из зависимости, они автоматически заполняют его для меня, однако компиляция вызывает ошибки, говоря, что таких пакетов нет. Что я делаю не так ?Добавить зависимость от модуля в Maven

+1

Почему бы вам не добавить зависимость в своем пом? Вот как вы добавляете зависимость в проекте Maven. –

+0

@JBNizet Я начал использовать Maven вчера, поэтому я совершенно новичок в этом. Можете ли вы привести мне пример того, как ссылаться на другой проект? –

ответ

3

В Maven нет идеи проекта.

У вас есть проект Maven B. Вы выбрали его groupId (например, com.mycompany), его artifactId (B, например) и его версию (1.0-SNAPSHOT, например). Вы запускаете mvn install в этом проекте. Это создает файл B-1.0-SNAPSHOT.jar и хранит его в вашем локальном репозитории Maven с его pom.

Теперь вы хотите использовать B-1.0-SNAPSHOT.jar в другом проекте Maven A. Для A, B - это библиотека, как и любая другая библиотека, которую вы используете (log4J, Spring, Hibernate, Guava, что угодно). Таким образом, вы добавить зависимость к нему в П А, так же, как вы делаете для любой другой библиотеки:

<dependencies> 
    <dependency> 
     <groupId>com.mycompany</groupId> 
     <artifactId>B</artifactId> 
     <version>1.0-SNAPSHOT</version> 
    </dependency> 
    <!-- other dependencies: log4J, Spring, Hibernate, Guava, whatever --> 
</dependencies> 

Read the awful documentation для более подробной информации.

+0

Отлично! Спасибо! –

+0

Добавляю ли я зависимость в pom of B или A? –

+0

В pom of A, так как B является зависимостью от A. Я исправил опечатку в своем ответе. –

Смежные вопросы