서비스 배포를 아마존 AWS에서 인스턴스를 새롭게 팠는데, SSH에서 ./gradlew clean build시 자꾸 화면이 멈춰서 움직이지 않았다.
./gradlew clean build
Downloading https://services.gradle.org/distributions/gradle-8.12.1-bin.zip
.............10%.............20%.............30%.............40%.............50%.............60%.............70%.............80%.............90%.............100%
Welcome to Gradle 8.12.1!
Here are the highlights of this release:
- Enhanced error and warning reporting with the Problems API
- File-system watching support on Alpine Linux
- Build and test Swift 6 libraries and apps
For more details see https://docs.gradle.org/8.12.1/release-notes.html
Starting a Gradle Daemon (subsequent builds will be faster)
이렇게 .. 이런 화면만 보이고 BUILD SUCCESS가 뜨지 않았다.
찾아보니 프리티어 무료 계정일 경우 인스턴스의 메모리 부족으로 발생하는 문제라고 한다.

보면 저렇게 치솟은 부분이 ./gradlew clean build 명령어를 입력한 시점이다.
이 문제를 해결하기 위헤 스왑 메모리 기능을 이용해 RAM 부족 현상을 해결해야 한다.
스왑은 주 메모리를 보조하여 시스템의 메모리 관리를 효율적으로 도와주는데, RAM이 가득찼을 때 일부 데이터를 스왑 공간으로 옮겨서 RAM을 정리해준다.
sudo dd if=/dev/zero of=/swapfile bs=128M count=16
다음과 같은 명령어를 SSH에 적어준다.
이 명령어는 dd 유틸리티를 사용해 128MB 블록 크기로 총 16개의 블록을 가진 스왑 파일을 생성한다는 의미로, 총 2GB 크기를 가지게 된다.
swap chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
cd /etc
sudo vi fstab
이 명령어를 실행하면 fstab 파일이 열리는데 이때 터미널에 i를 입력하여 insert 모드를 활성화 시킨 후에 파일 맨 마지막에
/swapfile none swap sw 0 0
이 코드를 입력해준다.
그 뒤에 esc키를 눌러주고 :wq를 입력한 후 엔터를 눌러주면 된다.
그 이후에 자신이 실행시킬 폴더로 이동 후 ./gradlew clean build 명령어를 실행하면 잘 실행됨을 확인할 수 있다.