次のコードがあります。
void func()
{
try
{
f1()
}
finally()
{
if (resource != null)
resource.close();
}
}
私は 3 つのブレークポイントを設定しました。f1() 内の f1() の呼び出し、finally ブロックの if ステートメントです。
finally ブロックのブレークポイントにヒットしていないようです。f1() 内のブレークポイントに到達した後、次のコマンドを使用してステップ実行すると、実際に最終ブロックを通過することになります。
また、finally ブロックの両方の行にブレークポイントを配置すると、ブレークポイントは実際に最初の行にヒットします。
これが JDB のバグによるものかどうかはわかりません。これが既知の問題なのか、何か不足しているのか、誰か教えてもらえますか?
LinuxでJDK 6を使用しています。