阿里云短信SDK报错:handler … java.lang.noclassdeffounderror: okio/options 的主要原因及解决办法

本篇文章主要讲解,java使用阿里云依赖进行提交短信时,报错:handler dispatch failed; nested exception is java.lang.noclassdeffounderror: okio/options 的主要原因及解决办法。
日期:2024年10月4日
作者:任聪聪

报文信息:

handler dispatch failed; nested exception is java.lang.noclassdeffounderror: okio/options

主要原因:

这是由于缺少okio依赖 或 其他引入依赖中存在低版本okio冲突导致的报错。

解决办法:

方式一、排除存在引入旧版本的依赖

   <dependencies>
       <dependency>
           <groupId>com.xxx.xxxx</groupId>
           <artifactId>xxxxxxx</artifactId>
           <version>1.0.0</version>
           <exclusions>
               <exclusion>
                   <groupId>com.squareup.okhttp3</groupId>
                   <artifactId>okhttp</artifactId>
               </exclusion>
           </exclusions>
       </dependency>
   </dependencies>

方式二、引入最新的okhttp3及okio

        <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
            <version>4.10.0</version>
        </dependency>
        <dependency>
            <groupId>com.squareup.okio</groupId>
            <artifactId>okio</artifactId>
            <version>3.0.0</version>
        </dependency>

常见问题:

1、安装完毕后依旧报错

这是由于idea没有更新索引导致的,可以直接点击左上角菜单,file,点击清理并重载即可,如下图:
file

2、安装后并重构,且通过idea清理重载后依旧报错

这种情况建议检查依赖版本冲突情况,将okio的版本改为适合okhttp3的依赖对应版本即可解决问题。

3、无论怎么样都无法解决这个问题

那么可以直接使用api的形式远程请求,进行发送,摒弃掉依赖发送的形式。

猜你喜欢

转载自blog.csdn.net/hj960511/article/details/142708013