4

我有几个实体分布在多个罐子里。位于 jar X 中的实体包含来自 jar Y 的实体集合。当我尝试在 jar XI 上进行静态编织时,出现以下错误:

异常描述:[class MyEntity] 使用非实体 [class MyOtherEntity] 作为关系属性 [method getMyOtherEntities] 中的目标实体。

该错误与以下堆栈有关:

在 org.eclipse.persistence.exceptions.ValidationException.nonEntityTargetInRelationship(ValidationException.java:1360) 在 org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.RelationshipAccessor.getReferenceDescriptor(RelationshipAccessor.java:538) 在 org.eclipse .persistence.internal.jpa.metadata.accessors.mappings.RelationshipAccessor.processJoinTable(RelationshipAccessor.java:692) 在 org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.ManyToManyAccessor.process(ManyToManyAccessor.java:160)在 org.eclipse.persistence.internal.jpa.metadata.MetadataProject.processStage3(MetadataProject.java:1726) 上 org.eclipse.persistence.internal.jpa.metadata.MetadataProject.processOwningRelationshipAccessors(MetadataProject.java:1489) .persistence.internal.jpa.metadata.MetadataProcessor。processORMMetadata(MetadataProcessor.java:535) at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processORMetadata(PersistenceUnitProcessor.java:550) at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.predeploy(EntityManagerSetupImpl.java:第1469章)

这两个实体都使用@Entity 进行了注释,并且可以在 Hibernate 中正常工作。
这两个类都在类路径中,并且我在调试器中检查了 MyOtherEntity 是否已找到并按预期进行了注释。

当实体分布在多个罐子中时,是否可以使用静态编织?

4

1 回答 1

0

您可以尝试在编织时指定依赖 jar

来自 Ant EclipseLink 的代码段编织 Ant 任务

 <weave  source="c:\myjar.jar"
        target="c:\wovenmyjar.jar"
        persistenceinfo="c:\myjar-containing-persistenceinfo.jar">
    <classpath>
        <pathelement path="c:\myjar-dependent.jar"/>
    </classpath>

</weave>
于 2012-11-05T12:05:13.397 回答