7

我正在使用 Ubuntu 14 运行 git-lab 服务器我正在尝试在 git-lab Ci 上编译构建,但由于某些原因,我一遍又一遍地遇到相同的错误:

ERROR: JAVA_HOME is set to an invalid directory: /usr/lib/jvm/java-7-openjdk-amd64/jre Please set the JAVA_HOME variable in your environment to match the location of your Java installation.

无论我如何更改 JAVA_HOME 的路径,结果总是相同的。我在 JVM 文件夹中有 4 个文件夹:

java-8-oracle
java-7-openjdk-amd64
java-1.7.0-openjdk-amd64
default-java

但是无论我将路径设置到哪个目录,结果总是相同的。

这是我的.gitlab-ci.yml文件:

 before_script:
- export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre
- export ANDROID_HOME="/opt/android-sdk"
- chmod +x gradlew

dev:  
  script:
  - ./gradlew assembleDebug

此错误的原因可能是什么?

4

3 回答 3

1

您可以尝试从中删除chmod +x gradlew并将before_script其移动到 main script

before_script:
- export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre
- export ANDROID_HOME="/opt/android-sdk"

dev:  
  script:
  - chmod +x ./gradlew
  - ./gradlew assembleDebug

参考:https ://about.gitlab.com/blog/2018/10/24/setting-up-gitlab-ci-for-android-projects/#comment-4440925341

于 2021-04-12T07:45:25.583 回答
1

尝试将您的更改.gitlab-ci.yml为:

before_script:  
  - export ANDROID_HOME="/opt/android-sdk"
  - export JAVA_HOME="/usr/lib/jvm/java-1.7.0-openjdk-amd64"
  - chmod +x gradlew

dev:  
  script:
    - ./gradlew assembleDebug
于 2016-06-23T21:12:42.200 回答
0

我知道这个问题可能已经解决了。但这是我修复我的方法。

用例:

在我在我的 3 个环境(Dev、Staging 和 Prod)上更新 Java 之后,在 Dev 和 Staging 上一切正常。但是,由于某些原因,负责生产部署的管道作业一直发送此错误:“错误:JAVA_HOME 设置为无效目录:C:/Program Files/Java/jdk1.8.0_171。请将 JAVA_HOME 变量设置为您的环境以匹配您的 Java 安装位置。” 我的 JAVA_HOME 设置为正确的路径。

修复:0. 确保您的 Java_Home 已正确设置。Fir windows 用户,例如 C:/your jdk root folder/(不要添加 /bin 文件夹)。1.清除gitlab中的runner缓存。2. 重启部署服务器上的 gitlab-runner 服务。

我希望这可以帮助别人。

于 2020-02-11T16:36:21.637 回答