Travis CI无法安装openjdk11

时间:2019-04-27 08:07:18

标签: maven travis-ci openjdk-11

我在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"

3 个答案:

答案 0 :(得分:6)

这似乎是download.java.net的TLS证书错误。 download.java.net公开的当前TLS证书无效:它适用于download.oracle.com

51个返回代码是由curl下载命令返回的。

您可以下载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个返回码

答案 1 :(得分:4)

为避免此问题,请在.travis.yml配置文件中尝试以下操作:

language: java
dist: xenial
sudo: required

jdk:
  - openjdk11

答案 2 :(得分:1)

Oracle可能必须修复其TLS证书,或者Travis最终必须以某种方式对其进行修复。

同时,通过向Travis配置中添加dist: xenial,我们有些运气,请参阅:https://travis-ci.community/t/install-of-openjdk11-is-failing-again/3061/16

另一种解决方案似乎是在Travis配置的oraclejdk11列表中添加jdk

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