FindBugs
AntからEclipseでコードを分析するために使用しています。
次のスニペットはRV_RETURN_VALUE_IGNORED_BAD_PRACTICE
次のようになります。
RV:メソッドは例外的な戻り値を無視します(RV_RETURN_VALUE_IGNORED_BAD_PRACTICE)
このメソッドは、チェックされていない値を返します。戻り値は、異常または予期しない関数の実行を示している可能性があるため、チェックする必要があります。たとえば、File.delete()メソッドは、ファイルを正常に削除できなかった場合(例外をスローするのではなく)、falseを返します。結果を確認しないと、メソッドの呼び出しが非定型の戻り値を返すことによって予期しない動作を通知するかどうかに気付くことはありません。
public void export (File file) throws IOException {
if (!file.exists()) {
file.createNewFile();
}
BufferedWriter bw = null;
try {
bw = new BufferedWriter(new FileWriter(file.getAbsoluteFile()));
...
実際、ファイルがどこに存在するかは関係ありません。メソッドは実行を継続する必要があります。例外が発生した場合、それは外部にスローされますexport()
このスニペットを書き直して、Findbugs構成ファイルで無効にせずに警告/エラーが表示されないようにするにはどうすればよいですか?