Mehrdeutige Indexreferenz auf OpenJPA

Diese Regel erkennt Java-Code, der eine nicht qualifizierte Referenz auf die Klasse org.apache.openjpa.persistence.jdbc.Index enthält, wenn On Demand Importe für die Pakete org.apache.openjpa.persistence.jdbc und javax.persistence vorhanden sind. Die Spezifikation "Java Persistence API (JPA) 2.1" führt die neue Klasse javax.persistence.Index ein. Dies führt zu dem folgenden Kompilierungsfehler, wenn Sie die Kompilierung für OpenJPA- und für Java EE 7-JPA 2.1-Bibliotheken durchführen:

The type Index is ambiguous

Wenn Sie die OpenJPA 2.0-Implementierung verwenden möchten und dieser Fehler auftritt, vergewissern Sie sich, dass Sie die Kompilierung für die JPA 2.0-Bibliotheken und nicht für die JPA 2.1-Bibliotheken durchführen. Führen Sie für Liberty die Kompilierung für die JAR-Datei der JPA 2.0-Spezifikation (com.ibm.ws.javaee.persistence.2.0.*.jar) im Verzeichnis wlp/dev/api/spec durch. Verwenden Sie für WebSphere Traditional vollständig qualifizierte Importe oder vollständig qualifizierte Klassenreferenzen, um Mehrdeutigkeiten zu verhindern.