3

コードをThe Checker Framworkでコンパイルすると、次のようにエラーが表示されます。

incompatible types in argument.
  found   : null
  required: @NonNull String

の最初の引数:

ResultSet rs = connection.getMetaData().getColumns(null, schemaName, tableName, null)

DatabaseMetadata.getColumns()が null カタログ (最初の引数) を許可することはわかっています。Checker Framework にどのように伝えるのですか?

4

3 に答える 3

1

Gili が答えたように、スタブ ファイルを使用できますが、JDK で不足している/間違った注釈を見つけた場合は、Checker Framework メーリング リストchecker-framework-discuss@googlegroups.comに報告するか、問題トラッカー

各リリースでは、注釈付き JDKが Checker Framework にバンドルされています。JDK の一般的なメソッドの注釈を取得するためだけに使用されます。Checker Framework を使用すると、自動的に使用されます。

この注釈は、Checker Framework リリース 1.8.0 以降に含まれています。

于 2014-09-10T22:25:54.937 に答える
0

セクションAnnotating Librariesでは、作成者が書いているように、スタブ ファイルを提供するか、問題のクラス ファイルを書き直すことができます。

スタブファイルの方が使いやすいように思えたので、最終的にはスタブファイルを使用することになりました。

于 2013-09-15T05:50:14.690 に答える