пакет org.eclipse.persistence.oxm.annotations не существует

#jaxb #moxy

#jaxb #moxy

Вопрос:

некоторое время я пытался использовать @XmlInverseReference аннотацию из Eclipselink 2.5, чтобы отменить связь «один ко многим» между классами.

Когда я использую аннотацию, генерируется импорт соответствующего пакета, как показано ниже :

 @XmlInverseReference(mappedBy="materialClassDescription")
public MaterialClass getMaterialClass() {
    return materialClass;
}
 


import org.eclipse.persistence.oxm.annotations.XmlInverseReference;

Eclipselink jar находится в пути сборки, jaxb.properties поддерживается и работает, поскольку я использую его для аннотирования @XmlId нестрокового поля, однако при сборке я получаю следующую ошибку :

пакет org.eclipse.persistence.oxm.annotations не существует
[javac] ОШИБКА: импорт org.eclipse.persistence.oxm.annotations.XmlInverseReference;
[javac]

кто-нибудь может помочь…

Комментарии:

1. Какую версию JDK вы используете? Это обычный проект Java SE или вы используете что-то вроде OSGi?

Ответ №1:

Если вы используете обычную настройку Java SE, вам просто нужно убедиться, что eclipselink.jar она находится в вашем пути к классу. Вы можете подтвердить, что используете EclipseLink 2.5, выполнив следующее:

 org.eclipse.persistence.Version.printVersion();