首页 > 解决方案 > Maven依赖缓存在Gitlab Runner上不起作用

问题描述

我在这方面花了很多时间,但似乎没有用。尝试过多个项目。

我们自己托管我们的 gitlab 运行器(通过 EKS 在我们的 AWS 上)由 Gitlab (SaaS) 管理。我希望它缓存 Maven 依赖项。

当我根据参考示例配置它时:https://gitlab.com/gitlab-org/gitlab-ci-yml/blob/master/Maven.gitlab-ci.yml,它仍然每次都下载所有依赖项。

stages:
  - test
  - pack

image: maven:3.6.1-jdk-8

variables:
  MAVEN_OPTS: "-Dhttps.protocols=TLSv1.2 -Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository -Dorg.slf4j.simpleLogger.showDateTime=true -Djava.awt.headless=true"
  MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version -DinstallAtEnd=true -DdeployAtEnd=true"


cache:
  paths:
    - .m2/repository


stylecheck_and_test:
  stage: test
  only:
    - tags
    - schedulers
    - web
    - triggers
    - branches
  script:
    - mvn $MAVEN_CLI_OPTS install -Dmaven.test.skip=true
    - mvn $MAVEN_CLI_OPTS clean test

标签: javamavengitlabgitlab-ci-runner

解决方案


也许您只是使 ci 脚本失败,因此未创建缓存。


推荐阅读