m2eclipse и WTP и добавление локального источника проекта - PullRequest
3 голосов
/ 01 апреля 2010

У меня есть проект Spring MVC в Eclipse, и его настройка для использования Maven. Я могу разрешить все свои внешние зависимости, но теперь я хочу включить в свою рабочую область еще один локальный проект. Обычно я делаю это через путь сборки Java и добавляю ссылку на проект. Но если я сделаю это вручную, m2eclipse просто удалит эти ссылки из моего файла classpath.

Я предполагаю, что это потому, что maven хочет обрабатывать все зависимости. Поэтому я включаю управление зависимостями для локального проекта (исходные файлы, которые я хочу включить), и теперь, когда я добавляю зависимости, этот проект обнаруживается и добавляет его в виде jar-типа (что правильно). Я также запустил maven-package, чтобы создать снимок исходного проекта. Но jar никогда не добавляется в список библиотек maven, и проект не собирается, потому что он не может найти классы.

Что я делаю не так? Спасибо за помощь!

Ответы [ 3 ]

2 голосов
/ 01 апреля 2010

Конфигурация проектов Maven в Eclipse получена из M2Eclipse из метаданных, содержащихся в POM, поэтому, если у вас есть два проекта, ProjectA и ProjectB, и вы хотите иметь ProjectB в качестве зависимости ProjectA вам нужно объявить ProjectB как таковое в POM ProjectA, т. е. чтобы добавить зависимость:

<dependency>
  <groupId>group.id.of.b</groupId>
  <artifactId>project-b</artifactId>
  <version>1.2.3-SNAPSHOT</version>
</dependency>

И если вы хотите зависеть от проекта в рабочей области (а не от артефакта через локальный репозиторий), щелкните правой кнопкой мыши на ProjectA, затем перейдите к Свойства> Maven и убедитесь, что вы выбрали Разрешить зависимости от проектов Workspace , как показано ниже:

альтернативный текст http://img530.imageshack.us/img530/98/screenshot001do.png

1 голос
/ 01 ноября 2010

больше не может комментировать, но после прочтения кажется, что «Разрешить зависимости рабочей области» работает только в том случае, если эти проекты также управляются Maven. Что если вы хотите добавить локальный проект, который не находится в maven?

0 голосов
/ 01 апреля 2010

Вам, вероятно, нужно добавить локальный проект (с его pom.xml artifactId) в качестве зависимости в pom.xml проекта WTP и включить разрешение зависимостей рабочей области?

...