1

このコードに問題があります...

import com.fasterxml.jackson.databind.ser.std.StdSerializer;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
...
StdSerializer<Object> stdSerializer;

stdSerializer = ToStringSerializer.instance;

注: パッケージには@NonNullByDefault、package-info.java で注釈が付けられます。

上記のコードの最後の行にToStringSerializer.instance、次のエラーがあります...

Null 型の安全性 (型注釈): 型 'ToStringSerializer' の式は、'StdSerializer<@NonNull Object>' に準拠するために未チェックの変換が必要です。対応するスーパータイプは 'StdSerializer' です

ファイルにはToStringSerializer.eea...

class com/fasterxml/jackson/databind/ser/std/ToStringSerializer

instance
 Lcom/fasterxml/jackson/databind/ser/std/ToStringSerializer;
 L1com/fasterxml/jackson/databind/ser/std/ToStringSerializer;
...

Eclipse 2021-03 (4.19.0 ビルド 20210312-0638) がToStringSerializer.instanceである必要があると言うのはなぜ...<@NonNull...>ですか? Eclipse はどのようにしてそれが である必要があると判断しObjectます@NonNullか? これを修正するにはどうすればよいですか?

この問題は Eclipse 2020-12 で発見され、Eclipse 2021-03 でも発生します。

4

1 に答える 1