jpa – 如何在GlashFish 4.0中更改EclipseLink?

我想在GlashFish 4.0中将 EclipseLink从2.5.0更改为2.5.1.我有 downloaded捆绑 downloaded并替换了以下jar文件

> org.eclipse.persistence.antlr.jar
> org.eclipse.persistence.jpa.jar
> org.eclipse.persistence.asm.jar
> org.eclipse.persistence.jpa.modelgen.jar
> org.eclipse.persistence.core.jar
> org.eclipse.persistence.oracle.jar
> javax.persistence.jar

在$GLASSFISH_HOME / glassfish / modules下.

执行此操作后,版本仍然保持不变.以下代码,

String version = org.eclipse.persistence.Version.getVersion();
System.out.println("EclipseLink version : " + version);

仍然显示版本2.5.0.

该捆绑包不包含eclipselink-x.x.x.jar.

还有什么需要改变?我正在使用NetBeans 7.2.1.

解决方法

你忘了一些文件,你需要完整的清单:

> org.eclipse.persistence.antlr.jar
> org.eclipse.persistence.asm.jar
> org.eclipse.persistence.core.jar
> org.eclipse.persistence.dbws.jar
> org.eclipse.persistence.jpa.jpql.jar
> org.eclipse.persistence.jpa.jar
> org.eclipse.persistence.jpa.modelgen.jar
> org.eclipse.persistence.moxy.jar
> org.eclipse.persistence.oracle.jar
> javax.persistence.jar

您不必重命名文件,可以删除以org.eclipse开头的旧文件,并将所需文件复制到modules文件夹.
这应该可以解决问题.

更新:如果它不起作用,您可能必须清除Osgi缓存.要执行此操作,请关闭服务器并删除文件Felix

$GLASSFISH_HOME/glassfish/domains/domain/osgi-cache/

重新启动服务器并等一下,它必须读取Osgi模块信息以重建缓存.

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...