Eclipse IDE:java.lang.IllegalArgumentException:不是托管类型

时间:2015-11-06 17:22:36

标签: eclipse spring jpa weblogic

我尝试在Weblogic 10.3.3 服务器上部署EAR应用程序。在http://localhost:7001/console/上使用Weblogic管理控制台时,它可以正常工作。使用Intellij IDEA时,它可以正常工作。

但是,从Eclipse Mars部署时,我有以下错误,由Spring JPA引起:

Caused By: java.lang.IllegalArgumentException: Not an managed type: class package.xxx.MyClass
    at org.hibernate.ejb.metamodel.MetamodelImpl.managedType(MetamodelImpl.java:171)
    at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation.<init>(JpaMetamodelEntityInformation.java:68)
    at org.springframework.data.jpa.repository.support.JpaEntityInformationSupport.getMetadata(JpaEntityInformationSupport.java:65)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getEntityInformation(JpaRepositoryFactory.java:149)
    at investmentcafe.ngs.dao.BaseRepositoryFactoryBean$NGSRepositoryFactory.getTargetRepository(BaseRepositoryFactoryBean.java:34)

我使用Spring 3.2.14.RELEASE ,Spring-data-jpa 1.6.6.RELEASE 。问题出现在Eclipse Mars.1( 4.5.1 build 20150924-1200)上,Oracle WebLogic Server Tools版本 8.4.0.201510191754 。我正在部署&#34;作为虚拟应用程序&#34;来自Weblogic工具。

我对这种奇怪的行为感到非常困惑。关于如何解释这种特定于Eclipse的行为和/或如何解决/修复它的任何想法?

1 个答案:

答案 0 :(得分:0)

似乎在META-INF文件夹中移动hibernate .xml文件修复了问题。 (因此persistence.xml可以重命名,但不能移动#GiveEclipseSomeLove)