我在升级到 JPA 2.2 时遇到问题。我正在使用 eclipselink 并更改了我的 pom 中的版本:
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>2.7.0</version>
</dependency>
我还更新了持久性.xml以指向 xsd 的正确版本:
<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd"
version="2.2">
<persistence-unit name="foo" transaction-type="RESOURCE_LOCAL">
<class>my.entity</class>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver" />
<property name="javax.persistence.jdbc.url" value="jdbc:derby:foo/data;create=true" />
<property name="javax.persistence.jdbc.user" value="user" />
<property name="javax.persistence.jdbc.password" value="pwd" />
<property name="eclipselink.ddl-generation" value="create-or-extend-tables" />
<property name="eclipselink.ddl-generation.output-mode" value="database" />
</properties>
</persistence-unit>
</persistence>
问题是我收到以下错误消息:
持久性.xml文件没有此 JPA 平台支持的内容。
我已经浏览了 eclipselink 文档,没有任何内容跳出来。
有什么想法吗?
JPA 2.0 升级到 2.1 后我遇到了相同的错误消息;我通过将Eclipse Project JPA设置中的JPA平台升级到EclipseLink 2.5.x来摆脱它。
安装非官方的 JPA 2.2 支持补丁解决了我的问题
帮助>安装新软件>
https://dl.bintray.com/danjaredg/eclipse-jpa2.2/eclipse-4.13/