Это сводит меня с ума, и я в шоке от того, что official documentation - это абсолютно useles.Как улучшить OpenJPA с Ant + IntelliJ IDEA
Вот что у меня есть:
- IntelliJ IDEA 11
- OpenJPA 2.1.1
С OpenJPA добавлена в список используемых библиотек я уже путь к классам OpenJPA, который выглядит как это
<path id="library.openjpa.classpath">
<fileset dir="${basedir}/lib/openjpa">
<patternset refid="library.patterns"/>
</fileset>
</path>
Согласно официальной документации, я добавил следующую цель
<target name="enhance">
<copy includeemptydirs="false" todir="${basedir}/lib/openjpa">
<fileset dir="src" excludes="**/*.launch, **/*.java"/>
</copy>
<taskdef name="openjpac" classname="org.apache.openjpa.ant.PCEnhancerTask">
<classpath refid="library.openjpa.classpath"/>
</taskdef>
<openjpac>
<classpath refid="library.openjpa.classpath"/>
</openjpac>
</target>
Это дает мне исключение,
C: \ работа \ PRJ \ build.xml: 283: org.apache.openjpa.util.MetaDataException: MetaDataFactory не может быть сконфигурирован (конф. newMetaDataFactoryInstance() возвращено null). Это может означать , что свойства конфигурации не найдены. Убедитесь, что у вас есть файл META-INF/persistence.xml, который доступен в вашем пути к классам, или что файл свойств, который вы используете для конфигурации, - . Если вы используете Ant, см. Атрибуты вложенного элемента задачи или . Это также может произойти, если ваши банки распространения OpenJPA повреждены, или , если ваша политика безопасности слишком строгая.
я тестировал с Process Monitor и можно увидеть, что он открывает и читаетpersistence.xml
.
У кого-то filed bug есть проблемы у меня есть, и ответ, который он получил, заключается в том, что поиск persistence.xml
не является источником проблем.
Вопросов:
- Что я могу сделать, чтобы заставить его работать?
- Могу ли я заставить его работать, пропуская необходимость в
persistence.xml
и просто указывая шаблон для .class файлов Я хочу улучшить? - Это больше вопрос Ant. Как я могу заставить OpenJPA enhancer искать
persistence.xml
в каталоге, отличном отopenjpa-2.1.1.jar
?
Вы подтвердили, что каталог META-INF находится на вашем пути к классу? – Rick
Я не знаю, как указать дополнительную директорию pathpath в скрипте Ant. Но просто чтобы убедиться, что я скопировал 'persistence.xml' в каталог, где сидит баннер OpenJPA. – expert