[Github Actions] Cannot locate a Gradle wrapper properties file

SangYu Lee·2023년 2월 24일
0

실패했던 [gradle.yml]

name: server_ci

on:
  push:
    branches: 
      - main
      - dev_back
  pull_request:
    branches:
      - main
      - dev_back

permissions:
  contents: read

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v3
    - name: Set up JDK 11
      uses: actions/setup-java@v3
      with:
        java-version: '11'
        distribution: 'temurin'
    - name: Build with Gradle
      uses: gradle/gradle-build-action@v2
      with:
        arguments: build

github actions로 배포자동화 연습을 하는 도중에 에러가 발생하였다

gradle-wrapper.properties를 찾을 수 없으며, gradle-version이나 gradle-executable을 명시하라는 로그가 있었다

그래서 찾아봤는데

gradle-wrapper.properties 잘 있고

gradle-version을 명시하라고 해서 build.gradle에 했는데도 해결되지 않았다


프로젝트 디렉토리 구조 문제라고 생각했었다

gradlew가 루트 디렉토리 하위에 /server/gradlew 이렇게 존재하기 때문에 혹시 github actions가 못찾는게 아닐까 생각해서 디렉토리 변경하는 명령(cd server)을 넣어주었다.

=> 디렉토리가 변경은 되는데, 막상 ls -l 명령으로 현재 디렉토리 내용물을 보면 똑같다. 그리고 여전히 빌드는 실패한다

gradle-version의 정체를 알게되었다

처음 발생한 에러에 있었던 gradle-version에 대해서

공식문서에서 뭔가를 발견하였다

gradle-version이라는게 build.gradle이 아니고 gradle.yml에 작성하는 것이었다. 바로 적용하였지만 빌드는 실패했다

그러나 힌트가 있었다.

"gradle init" 을 해봐라

gradle-init 적용

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v3
    - name: Set up JDK 11
      uses: actions/setup-java@v3
      with:
        java-version: '11'
        distribution: 'temurin'
    - name: init with Gradle
      uses: gradle/gradle-build-action@v2
    - run: gradle init
    - name: Build with Gradle
      uses: gradle/gradle-build-action@v2
      with:
        gradle-version: 7.5.1
    - run: build

gradle init을 적용했지만 build라는 명령이 없다고 한다.

    - name: Build with Gradle
      uses: gradle/gradle-build-action@v2
      with:
        gradle-version: 7.5.1
        arguments: build

arguments: build로 바꿨고 결과는 성공이었다.

성공한 [gradle.yml]

name: server_ci

on:
  push:
    branches: 
      - main
      - dev_back
  pull_request:
    branches:
      - main
      - dev_back

permissions:
  contents: read

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v3
    - name: Set up JDK 11
      uses: actions/setup-java@v3
      with:
        java-version: '11'
        distribution: 'temurin'
    - name: init with Gradle
      uses: gradle/gradle-build-action@v2
    - run: gradle init
    - name: Build with Gradle
      uses: gradle/gradle-build-action@v2
      with:
        gradle-version: 7.5.1
        arguments: build

처음에는 구글링 해도 나오지 않는 문제라서 굉장히 막막했지만, 공식 문서가 큰 도움이 되었다. 이 문제를 해결할 수 있었던 것은 내가 생각하는 gradle-version이 build.gradle 설정이 아닐지도 모른다는 생각 덕분이었다. 내가 맞다고 생각하는 것도 한 번쯤 의심할 수 있어야 하는 것 같다.

profile
아이스커피

1개의 댓글

comment-user-thumbnail
2023년 5월 28일

정말 올려주셔서 감사합니다. 첫 ci를 구축하는 과정에 필자님과 같은 오류가 생겼었는데 구글링해도 안 나오고 공식문서도 명확한 답변이 없어서 끙끙대고 있을무렵 에러메세지를 보다가 한국말로 검색해보니 이 게시글을 찾았습니다. 사랑합니다 ㅜㅜ

답글 달기