本文介紹了java.lang.SecurityException AWSCredentialsProvider簽名者信息不匹配的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!
問(wèn)題描述
我使用的是Amazon提供的兩個(gè)庫(kù):redshift-jdbc42-1.2.27.1051
和aws-java-sdk-core-1.11.600
。這兩個(gè)庫(kù)都在包com.amazonaws.auth
下定義了一個(gè)類(lèi)AWSCredentialsProvider
。當(dāng)我嘗試使用我的應(yīng)用程序時(shí),出現(xiàn)以下異常:
Caused by: java.lang.SecurityException: class "com.amazonaws.auth.AWSCredentialsProvider"'s signer information does not match signer information of other classes in the same package
我不確定如何解決此問(wèn)題。如有任何幫助,我們將不勝感激!
推薦答案
我發(fā)現(xiàn)在亞馬遜的紅移JDBC驅(qū)動(dòng)文檔中,他們說(shuō):
如果您使用Amazon RedShift JDBC數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序
身份驗(yàn)證,您必須在中安裝AWS SDK for Java 1.11.118或更高版本
您的Java類(lèi)路徑。如果您沒(méi)有安裝AWS SDK for Java,
您可以使用包含AWS SDK的驅(qū)動(dòng)程序。
問(wèn)題是因?yàn)槲椰F(xiàn)在擁有兩個(gè)庫(kù)都提供的AWS SDK組件。現(xiàn)在,我不需要將AWS SDK與驅(qū)動(dòng)程序打包在一起,因?yàn)槲铱梢詮腁WS S3 SDK中使用它。事實(shí)上,Amazon鼓勵(lì)開(kāi)發(fā)人員在沒(méi)有預(yù)打包SDK的情況下使用RedShift JDBC驅(qū)動(dòng)程序:
重要信息
我們強(qiáng)烈建議您使用Amazon RedShift JDBC驅(qū)動(dòng)程序
如果可能,不包括AWS SDK。
如果您遇到此問(wèn)題,并且正在從Maven下載依賴(lài)項(xiàng),您可以在此處找到非AWS-SDK驅(qū)動(dòng)程序:https://mvnrepository.com/artifact/com.amazon.redshift/redshift-jdbc42-no-awssdk
這篇關(guān)于java.lang.SecurityException AWSCredentialsProvider簽名者信息不匹配的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,