gradle - 我的 Gitlab CI/CD 管道在缓存中失败并出现 FATAL:文件不存在错误
问题描述
现在我正在尝试用 Gradle 学习 CI/CD。我正在使用 GitLab CI 的管道。通过 Gitlab 文档和一点点搜索发现 gilab-ci.yml 像这样
image: gradle:jdk11
before_script:
- export GRADLE_USER_HOME='pwd'/.gradle
cache:
paths:
- .gradle/wrapper
- .gradle/caches
package:
stage: build
script:
- ./gradlew assemble
test:
stage: test
script:
- ./gradlew check
但是它不适用于我的 Spring 启动应用程序 Gitlab pipline 给我“致命:文件不存在”错误。我认为这是由于缓存造成的,但 YAML 文件中的一切似乎都很好
解决方案
即使“致命:文件不存在”是红色和粗体,它并没有使构建失败,而只是一个警告。失败的实际原因是以下几行/bin/bash: line 104: ./gradlew: Permission denied
:
要解决此问题,请使用以下代码段更新构建阶段:
package:
stage: build
script:
- chmod +x ./gradlew
- ./gradlew --build-cache assemble
推荐阅读
- yocto - Yocto(Zeus) Perf 构建失败
- python - UnicodeEncodeError:“ascii”编解码器无法在位置 13 编码字符 u'\xe9':序数不在范围内(128)
- java - 通过数组列表设置对象属性
- java - 如何在jdbctemplet Spring java中获取更新行数
- python - 如何在 pptk 查看器窗口中添加一些文本?
- java - Java:从属性名称中获取值(属性名称和类型在运行时未知)
- jenkins - 如何在詹金斯的“构建”管道步骤中将NodeParameterValue作为参数传递
- javascript - 如何为signInWithPhoneNumber()重置成功的recaptcha
- apache - Apache / 2.4.6(CentOS)虚拟主机错误404,目录和文件位于根目录之外
- maven - 如何为单个用户创建多个 Maven m2 存储库