如何使用JPA设置Eclipselink?

Eclipselink文档说我需要在我的pom.xml中使用以下条目来获取Maven:

  org.eclipse.persistence eclipselink 2.0.0 compile ...   ...   EclipseLink Repo http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/rt/eclipselink/maven.repo  ...  

但是当我尝试使用@Entity注释时,NetBeans告诉我,该类无法找到。 事实上:Eclipselink的javax.persistence包中没有Entity类。

如何使用Maven设置Eclipselink?

eclipselink工件不提供JPA 2.0 API ,您需要添加javax.persistence

   eclipselink http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/rt/eclipselink/maven.repo/     org.eclipse.persistence eclipselink 2.0.0 provided   org.eclipse.persistence javax.persistence 2.0.0 provided  ... 

为简单起见,我建议使用非OSGI EclipseLink jar。

只需将以下内容添加到您的pom.xml

现在这些artifats都在maven存储库中,因此无需添加任何

    org.eclipse.persistence eclipselink 2.5.1   org.eclipse.persistence javax.persistence 2.0.0  

或者,如果您使用的是Java EE应用程序服务器,请使用org.eclipse.persistence.jpa:org.eclipse.persistence ,因为它不包含服务器上已有的依赖项。

    org.eclipse.persistence org.eclipse.persistence.jpa 2.5.1 provided   org.eclipse.persistence javax.persistence 2.0.0 provided  

当我查看我的本地maven存储库时,org.eclipse.persistence:eclipselink确实包含持久性api,至少对于eclipselink的2.0.0-SNAPSHOT版本。

但是eclipselink存储库中还有另一组依赖项,它们更加模块化。 这些是我在当前项目中使用的依赖项:

   org.eclipse.persistence javax.persistence 2.0.0 provided    org.eclipse.persistence org.eclipse.persistence.jpa 2.0.2 provided  

请注意,由于我部署到已包含eclipselink的glassfish,因此将范围设置为提供。

你可以尝试添加

  org.eclipse.persistence javax.persistence 2.0.0 compile