Viselkedésváltozás a kivételekben a Class.getAnnotation() módszer meghívásakor

A módszer java.lang.Class.getAnnotation() korábban a helytelent dobta java.lang.ArrayStoreException amikor az annotációnak volt egy tömbértéke, amely egy hiányzó osztályra hivatkozik. Java 11-ben ez a hívás a java.lang.TypeNotPresentException amikor az annotációnak van egy tömbértéke, amely egy hiányzó osztályra hivatkozik. Értékelje ki a catch blokkjában lévő logikát, hogy lássa, kell-e kezelnie a TypeNotPresentException kivételt vagy egy általánosabb futási kivételtípust.

Ez a szabály megjelöli a hívásokat a java.lang.Class.getAnnotation() metódus, amikor a metódushívást a try nyilatkozat a catch záradék ArrayStoreException.

Ennek a szabálynak van egy automatikus javítása, amelyet le kell cserélni ArrayStoreException -vel TypeNotPresentException a try/catch using Class.getAnnotation(). A javítási automatizálás engedélyezéséhez másolja az egyéni konfigurációt az alkalmazás build fájljába.

Az osztály Javadoc dokumentációjáért tekintse meg az osztály leírását. A Java SE 11 változásaival kapcsolatos további információkért lásd: Eltávolított szolgáltatások és beállítások a JDK 11 változatban.