Spring Data,EclipseLink和SimpleLoadTimeWeaver;由不同的ClassLoader加载的域类

时间:2014-04-12 12:19:14

标签: java spring

我有一个使用Spring Data和EclipseLink的项目。当我尝试跑步时,我明白了。

Caused by: java.lang.IllegalArgumentException: No [ManagedType] was found for the key class [CLASSNAME] in the Metamodel - please verify that the [Managed] class was referenced in persistence.xml using a specific <class>scrumspurs.domain.User</class> property or a global <exclude-unlisted-classes>false</exclude-unlisted-classes> element.

当我调试时,我可以看到我的域类被加载到Metamodel中。但是,在设置Spring Data存储库时,它们不是equals。当我调查时,我发现元模型中加载的元素由org.springframework.instrument.classloading.SimpleInstrumentableClassLoader加载,而被检查的元素由sun.misc.Launcher$AppClassLoader加载。

我正在使用带有EclipseLink的SimpleLoadTimeWeaver来尝试启动并运行。这支持吗?是否需要采取措施才能使此设置正常工作?

1 个答案:

答案 0 :(得分:0)

在使用InstrumentationLoadTimeWeaver之前,我遇到了完全相同的问题。我在这里找到答案: loadTimeWeaver