Nach Namespacekollisionen mit der neuen Klasse java.lang.Record suchen

In Java SE 14 wurde die Klasse java.lang.Record hinzugefügt. Da das java.lang.*-Paket in jeder Java-Klasse implizit importiert wird, kann eine Namespacekollision auftreten, wenn die Record-Klasse eines anderen Pakets mit einem Platzhalterzeichen importiert wird. Wenn Ihre Anwendung beispielsweise eine Klasse com.foo.Record verwendet, die mit import com.foo.* importiert wurde, kann der Compiler ab Java 14 nicht feststellen, ob bei der Verwendung von Record in Ihrer Anwendung auf com.foo.Record oder auf java.lang.Record verwiesen wird. Verwenden Sie zur Vermeidung dieser Namespacekollision einen Import mit einem einzigen Typ, wie z. B. import com.foo.Record.

Diese Regel markiert alle vorhandenen Record-Referenzen einmal pro Datei. Überprüfen Sie die Verwendung von Record-Klassen in Ihrer Anwendung und stellen Sie sicher, dass sie nicht mit einem Platzhalterzeichen importiert werden.

Weitere Informationen zu diesen Änderungen finden Sie unter Java 14 Release Notes: JEP 359 Records (Preview).