Não usar o método clone java.lang.ref.Reference

Em Java 8 e anteriores, os aplicativos poderiam chamar o método clone em java.lang.ref.Reference ou qualquer uma de suas subclasses conhecidas:java.lang.ref.PhantomReference, java.lang.ref.SoftReference, e java.lang.ref.WeakReference. No entanto, em Java 11, o java.lang.ref.Reference.clone() método foi substituído para sempre lançar um CloneNotSupportedException. Os aplicativos que chamam o método clone devem substituir a chamada do clone por uma chamada do construtor passando o referente e a fila de referência como parâmetros.

Essa regra sinaliza possíveis chamadas de clone que podem fazer com que uma CloneNotSupportedException seja emitida. Revise seu aplicativo e substitua quaisquer chamadas de clone que possam resolver para um java.lang.ref.Reference.clone() ou qualquer uma de suas subclasses conhecidas: java.lang.ref.PhantomReference, java.lang.ref.SoftReference, e java.lang.ref.WeakReference.

A regra tem uma correção automática que substitui quaisquer chamadas de clone que possam resolver para um java.lang.ref.Reference.clone() ou qualquer uma de suas subclasses conhecidas: java.lang.ref.PhantomReference, java.lang.ref.SoftReference, e java.lang.ref.WeakReference com uma chamada de construtor passando o referente e a fila de referência como parâmetros. Copie a configuração customizada para seu arquivo de construção do aplicativo para ativar a automação de correção.

Para obter mais informações sobre a mudança do Java 11, consulte Notas sobre a liberação do Java 11. Para obter mais informações sobre a classe java.lang.ref.Reference, consulte a documentação da classe Java.