Closed wangtiewu closed 1 year ago
请问你运行环境jdk版本是多少啊。 看你依赖截图,可能是okio 3.2和okhttp 3.14有冲突导致的
jdk1.8
//测试代码 Credential cred = new Credential("",""); OcrClient ocrClient = new OcrClient(cred, null); GeneralAccurateOCRRequest req = new GeneralAccurateOCRRequest(); req.setImageUrl(certFile); req.setIsPdf(true); GeneralAccurateOCRResponse resp; try { resp = ocrClient.GeneralAccurateOCR(req);
后来按这么修改Pom后没有报这个错误了
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>3.14.9</version>
</dependency>
<dependency>
<groupId>com.tencentcloudapi</groupId>
<artifactId>tencentcloud-sdk-java</artifactId>
<!-- go to https://search.maven.org/search?q=tencentcloud-sdk-java and get the latest version. -->
<!-- 请到https://search.maven.org/search?q=tencentcloud-sdk-java查询所有版本,最新版本如下 -->
<version>3.1.667</version>
</dependency>
嗯,应该就是okio 3.2里相比1.17.2有接口变动不兼容了,导致okhttp3.14.9运行的时候报错了
我遇到的问题是这2个依赖和minio的okhttp版本冲突。取高版本,短信就用不了,取低版本,minio就用不了。所以就用了maven-shade-plugin插件将短信的依赖打包成jar包,在打包的过程中,使用插件为okhttp和okio多加一层目录。再将这个jar包引入项目中使用springboot内置的tomcat就启动项目就可以了
错误: Exception in thread "main" java.lang.NoSuchMethodError: kotlin.collections.ArraysKt.copyInto([B[BIII)[B at okio.Segment.writeTo(Segment.kt:169) at okio.Segment.compact(Segment.kt:152) at okio.Buffer.write(Buffer.kt:1491) at okio.Buffer.read(Buffer.kt:1503) at okio.Buffer.writeAll(Buffer.kt:1290) at okio.Options$Companion.buildTrieRecursive(Options.kt:189) at okio.Options$Companion.buildTrieRecursive(Options.kt:175) at okio.Options$Companion.buildTrieRecursive$default(Options.kt:107) at okio.Options$Companion.of(Options.kt:72) at okio.Options.of(Options.kt) at okhttp3.internal.Util.(Util.java:73)
at okhttp3.OkHttpClient.(OkHttpClient.java:124)
at okhttp3.OkHttpClient$Builder.(OkHttpClient.java:449)
at com.tencentcloudapi.common.http.HttpConnection.(HttpConnection.java:39)
at com.tencentcloudapi.common.AbstractClient.doRequestWithTC3(AbstractClient.java:502)
at com.tencentcloudapi.common.AbstractClient.internalRequest(AbstractClient.java:350)
at com.tencentcloudapi.ocr.v20181119.OcrClient.GeneralAccurateOCR(OcrClient.java:518)