Возможно, вам не следует менять пакет
Я бы посоветовал против этого, потому что наличие в субпакете (или любом другом) нарушает текущую спецификацию JPA 2:
• Для каждого управляемого класса X в пакете p класс метамодели X_ в
пакет p создан. [67]
...
[67] Мы ожидаем, что вариант
различные пакеты будут предоставлены в будущем выпуске этого
спецификация.
...
Реализации этой спецификации не являются
требуется для поддержки использования неканонических классов метамоделей.
Приложения, использующие неканонические классы метамодели, не будут
портативный.
Другой способ организации - обычная практика JUnit: один и тот же пакет в другом исходном каталоге.
Но если вам нужно, вот как это делается
Следующее работает по крайней мере с версией Eclipse: Indigo Service Release 1 20110916-0149 и EclipseLink: eclipselink-2.3.0.v20110604-r9504. Имена файлов JAR могут незначительно отличаться от версии к другой.
Если включено, отключить генерацию в том же пакете, где сущности:
- Перейдите в Свойства проекта - JPA и проверьте это значение в Исходной папке.
это
<None>
Настройка генерации на другой пакет:
- Свойства - Обработка аннотаций
[x] Включить специфичные для проекта настройки
[x] Включить обработку аннотаций
[x] Включить обработку в редакторе
Сгенерированный исходный каталог: src (или где бы ни находились источники)
- Новая опция процессора:
ключ = eclipselink.canonicalmodel.subpackage
значение = sub | (желаемое название пакета)
- Перейти на один уровень глубже к Обработка аннотаций | Заводской путь и выберите Добавить внешние файлы JAR и добавьте следующие банки:
EclipseLink / jlib / jpajavax.persistence_2.0.3.v201010191057.jar
EclipseLink / jlib / jpaeclipselink-JPA-modelgen_2.3.0.v20110604-r9504.jar
EclipseLink / jlib / eclipselink.jar
- Пусть Eclipse перестроит проект.