Генерация метамодельных классов с использованием maven и eclipse (JPA, Maven, Eclipse) - PullRequest
4 голосов
/ 14 декабря 2011

Я использую m2e (1.0.100), Eclipse (Indigo SR1) и hibernate-jpamodelgen (1.1.1.Final).
Я хочу, чтобы hibernate генерировал метамодель Canonical из моих сущностей при компиляции проектов.
Я мог сделать это ранее, когда работал над проектом, отличным от maven, и следовал многочисленным учебным пособиям по настройке проекта eclipse для использования этого jar.
Однако, насколько я понимаю, при использовании m2e лучше всего (обязательно?) Позволить ему выполнить конфигурацию eclipse для вас, и поэтому я не уверен, как это сделать.
В этом учебнике гибернации объясняется, как использовать генератор с maven и затмением, но по отдельности.
Я думаю, что мне не хватает склеивания моего pom, который был сгенерирован как простой pom без архетипа, и конфигурации моего проекта eclipse, чтобы они позволили мне использовать магию JPA.
Кстати, следуя вышеприведенному руководству по maven, я создал сгенерированные maven файлы jar-классов, но они не видны затмением, поскольку они находятся только в jar-файлах, а не в реальных проектах.

Заранее спасибо

1 Ответ

1 голос
/ 29 января 2012

Я задал тот же вопрос в списке рассылки m2e-users и получил следующий ответ ( link для тех, кому нужна полная тема):

По сути, необходимо вручную настроить (например, с помощью вышеупомянутого учебного пособия по спящему режиму) затмение, чтобы использовать генератор и настроить те же каталоги, которые использует maven (для меня это был target / generate-sources / annotations) в качестве выходного каталога.

Согласно коммиттерам m2e, проект в настоящее время не изменяет эти файлы затмений, и поэтому они не будут перезаписаны.

Проблема, с которой я столкнулся, заключалась в том, что эта информация теряется (и поэтому снова требуется ручное изменение) при использовании GIT и переключении между ветвями, поскольку я не хочу фиксировать файлы, связанные с затмением, в SCM.
В настоящее время это приемлемое решение, и я надеюсь, что m2e сможет добавить эту недостающую функцию.

Обновление
Информация, которая теряется, по крайней мере, согласно моему опыту, является определением папки target/generated-sources/annotations как исходной папки. Просто как к сведению.

...