2

我正在尝试使用 JetS3 在一个应用程序中访问 Amazon S3,该应用程序还使用 Jersey 和 Grizzly(不确定这是否相关)。我的开发环境是使用 JRE 版本 1.7.0u.jdk 在 OSX 10.7.3 上的 Eclipse。

我已经读到它与无法找到“密钥库”有关,不管它是什么——但它不需要使用任何本地密钥,我已经以编程方式向它提供了 S3 的身份验证信息。

我不知道这是我的代码还是我的开发环境的问题,有人可以帮忙吗?

编辑:我在命令行上添加了以下内容:

- Djavax.net.ssl.keyStore=/Library/Java/JavaVirtualMachines/1.7.0u.jdk/Contents/Home/jre/lib/security/cacerts

该文件存在,但我仍然看到相同的错误:-(

4

1 回答 1

0

Java文件树与苹果打包系统的交集再次来袭!

我刚刚解决了类似的问题(我认为是一个拙劣的 beta 升级的遗留问题)。至少同样的错误。我在磁盘上发现的情况是我的 JDK 安装中有符号链接,而不是实际文件(包括 cacerts):

> ls -lt /Library/Java/JavaVirtualMachines/1.6.0_30-b12-404.jdk/Contents/Home/lib/security/
total 24
lrwxr-xr-x  1 root  admin     79 Apr  7 15:11 blacklist -> /System/Library/Java/Support/Deploy.bundle/Contents/Home/lib/security/blacklist
lrwxr-xr-x  1 root  admin     81 Apr  7 15:11 cacerts -> /System/Library/Java/Support/CoreDeploy.bundle/Contents/Home/lib/security/cacerts
lrwxr-xr-x  1 root  admin     87 Apr  7 15:11 trusted.libraries -> /System/Library/Java/Support/Deploy.bundle/Contents/Home/lib/security/trusted.libraries

不幸的是,链接的 Deploy.bundles 不存在。

就我而言,我能够在 Time Machine 中回顾,找到已删除的捆绑包并恢复它们。

您可能已经有一些可以链接到的旧版本。至少您应该能够查看是否有类似的潜在问题。

抱歉,这不是一个完整的解决方案,但我希望它能让你走得更远。

您总是可以从 Oracle 获取发行版,然后将证书文件弹出到位,但如果您的安装缺少其他项目,则可能存在其他问题。

在谷歌上我发现了这个博客: http ://architecturalatrocities.com/post/19073788679/fixing-the-trustanchors-problem-when-running-openjdk-7

问题是openjdk不包括文件,他建议链接到我必须恢复的Bundle文件。

于 2012-04-12T17:37:26.290 回答