java - 在线Gitlab ci上安装Java

标签 java linux ubuntu gitlab gitlab-ci

这是我的 .gitlab-ci.yml 脚本。

before_script:
  - uname -a
  - apt-get install default-jre default-jdk openjdk-7-jre openjdk-7-jdk
  - java -version
  - export MODE="service"
  - export PID_FOLDER="/var/run/gitlab-runner-test"

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

我正在尝试在 gitlab.com 页面上运行脚本来编译一个 android 项目。我检查了我的脚本的一些改动,发现 ci 上没有安装 java linux Linux runner-8a2f473d-project-881036-concurrent-0 4.5.0-coreos-r1 #2 SMP Thu May 5 07:27:26 UTC 2016 x86_64 GNU/Linux。

我尝试安装 java,就像为 ruby​​ 显示的示例一样,但它不起作用,并显示无法定位包错误。

我不确定应该是什么包,因为它看起来像一个 ubuntu 系统,但是在我的 ubuntu 上运行的命令在这里不起作用。

这不是本地安装。

最佳答案

我相信您应该能够使用 here 中描述的 image 功能.我发现 anapsix/alpine-java:jdk8 Docker 镜像取得了成功。

我正在使用我自己的 Docker gitlab-runner 和自定义 Docker 镜像,因为我需要 Maven 和 Oracle java。我不是 100% 确定 gitlab.com 上的共享运行器是否允许您使用自己的图像。

我的 Dockerfile(我上传到 Gitlab 并使用他们新的 Docker 容器注册功能)

FROM anapsix/alpine-java:jdk8

ENV MAVEN_VERSION 3.3.3

RUN apk update && apk upgrade && apk add curl wget bash tar rsync openssh-client

RUN mkdir -p /usr/share/maven \
  && curl -fsSL http://apache.osuosl.org/maven/maven-3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz \
    | tar -xzC /usr/share/maven --strip-components=1 \
  && ln -s /usr/share/maven/bin/mvn /usr/bin/mvn \
  && rm -rf /tmp/* /var/cache/apk/*;

ENV MAVEN_HOME /usr/share/maven

ENTRYPOINT []
CMD ["bash"]

关于java - 在线Gitlab ci上安装Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37185109/

相关文章:

java - 线程 "main"java.lang.AssertionError 中的异常

php - 重定向 htaccess 或 php?

python - 试图让 OpenCV 3.2.0 与 virtualenv 一起工作

python - 在 Ubuntu 12.04 中的 Python 2.7 中导入 Tensorflow 时出错。 'GLIBC_2.17 not found'

php - 没有 PHP 处理 (Ubuntu/Apache2)

Java 静态方法优缺点

java - 如何从主线程终止子线程

java - 如何使用 Java 在多个平台上正确加载文件?

linux - ubuntu 16.04系统如何强制卸载mssql

java - crontab 在 linux 上运行 java shell 脚本