使用 Apache HttpClient 的奇怪行为

Strange behavior using Apache HttpClient

我是 OSGi 的新手,这是我第一次在 OSGi 下使用 Apache HttpClient。

当我执行这段代码时...

try {
        System.out.println("> Creating Method Request");
        HttpGet httpGet = new HttpGet(baseUri + codec.encode(data));

        System.out.println("> Creating Client");
        CloseableHttpClient httpclient = HttpClients.createDefault();

        System.out.println("> Use Objects");

    } catch (Exception ex) {

        System.out.println("> Exception " + ex.getCause());

    } finally {

        System.out.println("> Finally");
    }

,我得到了这个行为:“> Creating Client”被打印出来,然后是“> Finally”。没有捕获到异常,但永远不会打印“>Using Objects”。

有人知道是什么原因造成的吗?提前致谢。

因为抛出了 Error 而不是 Exception?将 catch (Exception 更改为 catch (Throwable,看看会发生什么。