Travis CI 无法安装 openjdk11。

14

我在Travis CI中安装openjdk11遇到了问题。

这是我得到的错误:

Installing openjdk11
$ export JAVA_HOME=~/openjdk11
$ export PATH="$JAVA_HOME/bin:$PATH"
$ ~/bin/install-jdk.sh --target "/home/travis/openjdk11" --workspace "/home/travis/.cache/install-jdk" --feature "11" --license "GPL" --cacerts
install-jdk.sh 2019-04-18
The command "~/bin/install-jdk.sh --target "/home/travis/openjdk11" --workspace "/home/travis/.cache/install-jdk" --feature "11" --license "GPL" --cacerts" failed and exited with 51 during .
Your build has been stopped.

.travis.yml文件:

language: java
jdk: openjdk11
cache:
  directories:
    - "$HOME/.m2/repository"

可能是Travis的新bug。我遇到了同样的问题,而昨天还能正常构建。 - Lukas Rytz
同样的问题。我有两个工作一直失败,显示错误代码51。我已经报告了这个问题。 - AndyS
我在使用openjdk 10和11时遇到了同样的问题。现在问题已经解决了,而且我自己什么都没做 :) - xtermi2
3个回答

8
为了避免这个问题,您可以尝试在您的.travis.yml配置文件中添加类似以下内容的设置:
language: java
dist: xenial
sudo: required

jdk:
  - openjdk11

2
工作正常。不需要使用 sudo 部分。 - fdaugan

7
似乎是关于 download.java.net 的 TLS 证书错误。 当前由 download.java.net 提供的 TLS 证书无效:它是为 download.oracle.com 发布的。 curl 下载命令返回了 51 的状态码。
您可以下载 install-jdk.sh 脚本:
curl -o /tmp/install-jdk.sh -L https://raw.githubusercontent.com/sormuras/bach/master/install-jdk.sh

然后运行它:

bash -x /tmp/install-jdk.sh --target "/home/travis/openjdk11" --workspace "/home/travis/.cache/install-jdk" --feature "11" --license "GPL" --cacerts

失败的命令是:

curl -o /dev/null --silent --head --write-out '%{http_code}' https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_osx-x64_bin.tar.gz

返回代码为51


下载链接已修复:https://github.com/sormuras/bach/commit/db42afccd2c40c903ddf73156f304c2276517c6c#diff-08dca971d5e4fbd0624e7bf955f5adb1。现在使用download.oracle.com而非download.java.net - Pierre G

1

可能是Oracle需要修复他们的TLS证书或者Travis需要在他们的端口上解决这个问题。

与此同时,我们通过将dist: xenial添加到我们的Travis配置中,有了一些运气,参见:https://travis-ci.community/t/install-of-openjdk11-is-failing-again/3061/16

另一个解决方案似乎是在Travis配置中将oraclejdk11添加到jdk列表中。

我不会特别说这些是实际的解决方案,而只是暂时的解决方法。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接