我有两个实体,其中一个继承另一个,所以我在jar1中有entity1,而我在jar2中有entry2-> inherits(entity1)

在jar1中:

@Entity
public class Entity1 {...}


在jar2中:

@Entity
public class Entity2 extends Entity1 {...}


因此,我如何才能使其正常工作,它甚至没有编译说:

An annotation processor threw an uncaught exception...
Caused by: java.lang.NullPointerException
at org.eclipse.persistence.internal.jpa.metadata.accessors.classes.EntityAccessor.discoverMappedSuperclassesAndInheritanceParents(EntityAccessor.java:224)


看起来很简单,但不起作用,该怎么办?

更新:

这是jar2的persistencel.xml:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns /persistence/persistence_2_0.xsd">
<persistence-unit name="EntityBPU" transaction-type="JTA">
   <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
   <jta-data-source>my_datasource</jta-data-source>
   <jar-file>jar1.jar</jar-file>
   <properties>
      <property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
   </properties>
</persistence-unit>

最佳答案

从理论上讲,在不同的JAR中具有两个相关实体没有什么特别的。

检查您的环境和编译方式。

关于java - 当继承跨越单独的JAR时,如何使用@Entity属性?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8372175/

10-09 00:52