Eclipse: сборка веб-развертывания и проблема зависимостей Maven
проблема
В Eclipse 3.5 или более ранней версии, чтобы развернуть зависимости Maven в правильную папку «/WEB-INF/lib», вам необходимо настроить зависимости через «Зависимости модуля Java EE» и обновленный «.classpath» файл будет выглядеть следующим образом:
Файл: «.classpath», по зависимостям модуля Java EE…
......
Начиная с Eclipse 3.6, «Зависимости модуля Java EE» заменены на «Сборка веб-развертывания», но вы можете сделать то же самое через «Записи пути к классам в ссылочных проектах», однако он обновит файл «.classpath» как следующие:
Файл: «.classpath», сборка веб-развертывания…
......
К сожалению, по умолчанию(value=”../”) не позволяет развернуть все зависимости Maven.
Решение
Это не большая проблема, вы все равно можете вручную изменить(value=”../”) на(value=”/WEB-INF/lib”), но это будет отменяться каждый раз, когда вы запускаете сборку Maven. Не беспокойтесь, есть еще два решения:
1. Поддержка WTP
Игнорируйте настройки «Ссылки на путь к классам связанных проектов», вместо этого сделайте так, чтобы Maven поддерживал WTP 2.0
mvn eclipse:eclipse -Dwtpversion=2.0
Будет создан новый файл с именем «org.eclipse.wst.common.component» в папке «settings», см. Часть этого файла:
Файл: «org.eclipse.wst.common.component», автор: WTP
...... uses
Благодаря поддержке WTP это помогает правильно развернуть зависимости Maven в папке «/WEB-INF/lib».
2. плагин m2eclipse
Установитеm2eclipse, подключаемый модуль Eclipse для интеграции Maven в Eclipse IDE. После установки щелкните правой кнопкой мыши папку проекта, выберите «Maven» -> «Update Project Configuration», он обновит файл «.classpath» соответственно, см. Фрагмент
Файл: «.classpath», автор: m2eclipse
......
Это также помогает правильно развернуть зависимости Maven.