1

我需要为下一个 URL 生成 sha:

https://download.oracle.com/otn-pub/java/jdk/8u301-b09/d3c52aa6bfa54d3ca74e617f18309292/server-jre-8u301-linux-x64.tar.gz

因为我需要oracle_jre_sha参数来运行一些工作。我不太确定这个概念,这个主题与 chef-nexus-repository-manager https://github.com/sonatype/chef-nexus-repository-manager/blob/master/Jenkinsfile相关。

我找到了这个主题:https ://github.com/sous-chefs/java/issues/316 ,但不太确定如何从这个 JRE 版本生成这个 sha。

谢谢!

4

1 回答 1

0

那是一个 32 个十六进制字符。32 x 4 是 128 位。Oracle 发布的哈希值(例如这里https://www.oracle.com/webfolder/s/digest/8u301checksum.html)是 SHA256 和 MD5 ......并且它们都不匹配该 URL 中的内容。

我的猜测是,Oracle故意在 URL 中使用 UID,以使用户在不使用 Oracle 帐户并表示他们已阅读并同意许可条款的情况下难以下载 JRE 或 JDK。让用户轻松计算出 UID 将是什么对他们来说是弄巧成拙。使用 SHA512,他们可以使它实际上变得不可能,我不明白他们为什么这样做。

如果这对您来说有问题,我的建议是手动下载您需要的安装程序并将副本保存在您自己的私有基础架构中。然后设置您的 Chef 食谱以从您的私有副本部署 Java。请注意,这是这里的建议:

这本食谱特别支持这种处理问题的方式。

或者,使用不会使脚本化 Java 安装变得困难的 Oracle Java 替代方案。

于 2021-09-09T13:32:27.383 回答