我有一个使用 JPA 的应用程序。在应用程序中我有一堂课
@Entity
public class Root{
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private long id;
...
}
在我persistence.xml
指定的
<persistence ...>
<persistence-unit ...>
<exclude-unlisted-classes>false</exlude-unlisted-classes>
</persistence-unit>
</persistence>
除此之外,我还有几个 Jar 文件,它们在运行时作为插件加载。这些插件可能有扩展类的Root
类,它们也是实体。
加载文件工作正常,但在坚持我得到一个IllegalArgumentException
消息Subclass is not a known Entity type
。我读到了 CompositePersistenceUnits,这并不是一个真正的解决方案,因为我必须事先指定所有的 jar 文件,这对于基于插件的系统来说是不可能的。
我现在的问题是:我可以动态地将 Jar-Files 添加到复合持久性单元吗?或者我什至可以将新实体添加到非复合的持久性单元中吗?