java.lang.NoClassDefFoundError:无法初始化类org.apache.http.conn.ssl.SSLConnectionSocketFactory

时间:2017-04-17 08:25:50

标签: java ssl noclassdeffounderror

我面临以下问题:

java.lang.NoClassDefFoundError: Could not initialize class org.apache.http.conn.ssl.SSLConnectionSocketFactory

我正在使用httpclient 4.5 jar。能否告诉我如何解决?

SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslcontext, new String[] {"TLSv1" }, null,
                       SSLConnectionSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5</version>
    <scope>provided</scope>
</dependency>

2 个答案:

答案 0 :(得分:0)

提供范围的需要是什么。

<dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5</version>
</dependency>

如果您使用静态阻止,请使用try-catch。

答案 1 :(得分:0)

我们在java.lang.NoClassDefFoundError中遇到了同样的问题:无法初始化类org.apache.http.conn.ssl.SSLConnectionSocketFactory,并且Maven中存在适当的依赖关系。

在我们的案例中,问题的原因是tika-app,当我们将其更改为tica-core时,问题已解决。下面评论的部分我们替换为上面的部分:

    <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-core</artifactId>
        <version>1.19.1</version>
    </dependency>

    <!--<dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-app</artifactId>
        <version>1.16</version>
    </dependency>-->