我正在嘗試使用最新的 DocuSignApi for Java(2.6.2 版)實現(xiàn)一些基本功能。我目前只是想讓 JWT 授權(quán)流程正常工作。這是代碼:ApiClient apiClient = new ApiClient();this.apiClient.configureJWTAuthorizationFlow(this.adminProperties.getRsaPublicKey(), this.adminProperties .getRsaPrivateKey(), this.adminProperties.getoAuthBaseUrl(), this.adminProperties.getIntegratorKey(), this.adminProperties.getImpersonatedUserGuid(), TOKEN_EXPIRATION_IN_SECONDS);在上面的 `ApiClient.configureJWTAuthorizationFlow(...) 調(diào)用中,我收到以下運行時錯誤:Caused by: java.lang.ClassNotFoundException: com.auth0.jwt.exceptions.JWTCreationExceptionat java.net.URLClassLoader.findClass(URLClassLoader.java:381)at java.lang.ClassLoader.loadClass(ClassLoader.java:424)at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)at java.lang.ClassLoader.loadClass(ClassLoader.java:357)我沒有收到任何編譯錯誤,只是為了清楚。我已將此添加到我的項目 pom 中,如DocuSignApi Java Wiki 所示: <dependency> <groupId>com.docusign</groupId> <artifactId>docusign-esign-java</artifactId> <version>2.6.2</version> </dependency>現(xiàn)在我還使用了一個 Maven 原型,它引入了大量其他罐子,這些罐子與我公司的所有項目一起使用,并且我的應(yīng)用程序中的其他功能需要這些罐子。我可以看到我的有效 pom 正在拉入這個版本的 java-jwt & spring-security-jwt: <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>2.2.0</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-jwt</artifactId> <version>1.0.8.RELEASE</version> </dependency>我還注意到DocuSignApi Java Wiki上列出的依賴項之一是這樣的:org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:1.0.2我懷疑我的錯誤可能與我的原型中的 JWT 2.2.0 和所需的 DocuSign 1.0.2 版本之間的版本沖突有關(guān)。我的問題是我的錯誤確實是由與 JWT jar 的版本沖突引起的嗎?如果是這樣,解決此問題的最佳方法是什么?DocuSignApi 可以像我一樣使用較新版本的 JWT 嗎?感謝您的時間!
1 回答

MMMHUHU
TA貢獻(xiàn)1834條經(jīng)驗 獲得超8個贊
這里的問題最終是java-jwt jar 的版本沖突。我的項目使用的是 2.2.0 版本,但是Java DocuSign API的 2.6.2 版本所需的依賴項是 3.2.0。
這
org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:1.0.2
我上面列出的依賴關(guān)系用詞不當(dāng)……那不是沖突的 jar。
由于此時我無法升級到 java-jwt 3.2.0 jar,我被迫將我的 Java DocuSign API 降級到 2.2.1,其中對 java-jwt 的依賴不存在。
希望其他人可以從我在這里犯的相當(dāng)簡單的錯誤中受益。
添加回答
舉報
0/150
提交
取消