构建JPA项目时的Eclipse AbstractMethodError

时间:2013-05-12 15:49:26

标签: eclipse jpa m2eclipse facet jboss-tools

Eclipse IDE(Juno RE 2)配备jboss开发工作室时遇到问题。我有一些使用JPA的Maven项目。在这些项目中,Eclipse报告错误“ 该项目具有JPA方面,但不能创建JPA项目。有关详细信息,请参阅错误日志。“

当我在工作区的.metadata文件夹中看到.log文件时,我看到了这个例外:

java.lang.AbstractMethodError: org.jboss.tools.hibernate.jpt.core.internal.jpa2.HibernateJpa2_0PlatformFactory.buildJpaPlatform(Lorg/eclipse/jpt/jpa/core/JpaPlatform$Config;)Lorg/eclipse/jpt/jpa/core/JpaPlatform;
at org.eclipse.jpt.jpa.core.internal.platform.InternalJpaPlatformConfig.buildJpaPlatform(InternalJpaPlatformConfig.java:109)
at org.eclipse.jpt.jpa.core.internal.platform.InternalJpaPlatformConfig.getJpaPlatform(InternalJpaPlatformConfig.java:102)
at org.eclipse.jpt.jpa.core.internal.platform.InternalJpaPlatformManager.getJpaPlatform(InternalJpaPlatformManager.java:288)
at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.getJpaPlatform(InternalJpaProjectManager.java:666)
at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.buildJpaProjectConfig(InternalJpaProjectManager.java:653)
at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.buildJpaProject(InternalJpaProjectManager.java:623)
at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.addJpaProject(InternalJpaProjectManager.java:604)
at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.buildJpaProject_(InternalJpaProjectManager.java:303)
at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager$BuildJpaProjectCommand.execute(InternalJpaProjectManager.java:297)
at org.eclipse.jpt.common.core.internal.utility.command.CommandJobCommandAdapter.execute(CommandJobCommandAdapter.java:50)
at org.eclipse.jpt.common.core.internal.utility.command.JobCommandJob.run(JobCommandJob.java:42)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

我真的找不到这个错误的原因。我也无法绕过它。 任何形式的解释和/或帮助将不胜感激。

编辑: 或者,当我告诉maven更新项目时,我得到了

java.lang.NoClassDefFoundError: org/eclipse/jpt/jpa/core/JpaFacet
at org.jboss.tools.maven.jpa.configurators.JpaProjectConfigurator.canConfigure(JpaProjectConfigurator.java:171)
at org.jboss.tools.maven.jpa.configurators.JpaProjectConfigurator.configure(JpaProjectConfigurator.java:73)
at org.eclipse.m2e.core.project.configurator.AbstractLifecycleMapping.configure(AbstractLifecycleMapping.java:109)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:413)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:350)
at org.eclipse.m2e.core.ui.internal.UpdateMavenProjectJob.runInWorkspace(UpdateMavenProjectJob.java:74)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

1 个答案:

答案 0 :(得分:0)

我在更新Eclipse(Kepler)后遇到了同样的问题。我通过删除项目属性中的JPA Facet解决了这个问题。不幸的是,这只是一个临时解决方案。在“Maven”之后> “更新项目...”JPA问题标记返回...

也许有人想出一个更好,更永久的解决方案!

How to remove JPA Facet from project properties