java.lang.SecurityException AWSCredentialsProvider Signer Information Does Not Match(java.lang.SecurityException AWSCredentialsProvider签名者信息不匹配)
问题描述
我使用的是Amazon提供的两个库:redshift-jdbc42-1.2.27.1051
和aws-java-sdk-core-1.11.600
。这两个库都在包com.amazonaws.auth
下定义了一个类AWSCredentialsProvider
。当我尝试使用我的应用程序时,出现以下异常:
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
我不确定如何解决此问题。如有任何帮助,我们将不胜感激!
推荐答案
我发现在亚马逊的红移JDBC驱动文档中,他们说:
如果您使用Amazon RedShift JDBC数据库驱动程序 身份验证,您必须在中安装AWS SDK for Java 1.11.118或更高版本 您的Java类路径。如果您没有安装AWS SDK for Java, 您可以使用包含AWS SDK的驱动程序。
问题是因为我现在拥有两个库都提供的AWS SDK组件。现在,我不需要将AWS SDK与驱动程序打包在一起,因为我可以从AWS S3 SDK中使用它。事实上,Amazon鼓励开发人员在没有预打包SDK的情况下使用RedShift JDBC驱动程序:
重要信息
我们强烈建议您使用Amazon RedShift JDBC驱动程序 如果可能,不包括AWS SDK。
如果您遇到此问题,并且正在从Maven下载依赖项,您可以在此处找到非AWS-SDK驱动程序:https://mvnrepository.com/artifact/com.amazon.redshift/redshift-jdbc42-no-awssdk
这篇关于java.lang.SecurityException AWSCredentialsProvider签名者信息不匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:java.lang.SecurityException AWSCredentialsProvider签名者信息不匹配
- GC_FOR_ALLOC 是否更“严重"?在调查内存使用情况时? 2022-01-01
- 获取数字的最后一位 2022-01-01
- 未找到/usr/local/lib 中的库 2022-01-01
- 如何指定 CORS 的响应标头? 2022-01-01
- java.lang.IllegalStateException:Bean 名称“类别"的 BindingResult 和普通目标对象都不能用作请求属性 2022-01-01
- 在 Java 中,如何将 String 转换为 char 或将 char 转换 2022-01-01
- 如何使 JFrame 背景和 JPanel 透明且仅显示图像 2022-01-01
- 将 Java Swing 桌面应用程序国际化的最佳实践是什么? 2022-01-01
- 转换 ldap 日期 2022-01-01
- Eclipse 的最佳 XML 编辑器 2022-01-01