본문 바로가기
개발 관련 개념들

IntelliJ에서 Gradle기반 스프링 프로젝트 실행 - 오류 해결 로그

by 코곰 2021. 4. 20.

결국 Eclipse를 버리고 IntelliJ로 넘어오게 됐다. 그리고 나서 한 생각은 '넘어오길 잘했다...!'

백엔드 팀의 코드를 클론해서, 서버를 돌려 Swagger를 살펴보는 것이 목적이었고,

이를 달성할 때까지 마주친 에러들을 기록한다.

 

 

1. IntelliJ와 내 깃허브 아이디 연동하기

(a) 우선, Git 세팅을 해준다

- File - Settings - Git

오른쪽 위에 Path to Git executable이 잘 나오나 확인.

 

(b) Github 연동

- 위의 캡쳐에서, Git 바로 밑 GitHub부분으로 가서

깃허브에 로그인, 내 아이디를 연동시켜주면 된다.

 

 

2. 프로젝트 가져오기

- File - New - Get From Version Control누르면

이렇게 뜨고, 내가 원하는 프로젝트를 가져올 수 있다.

혹은 Repository URL 창에서, 경로를 입력해 가져올 수도 있다.

 

3. 실행하기

- 이후 실행은 다음의 블로그 글의 도움을 받았다.

gist.github.com/sungkwangsong/3717edde69390238e3de836e8364ccdb

 

Gradle 기반 Spring 프로젝트 IntelliJ에서 임포트와 실행하기

Gradle 기반 Spring 프로젝트 IntelliJ에서 임포트와 실행하기 . GitHub Gist: instantly share code, notes, and snippets.

gist.github.com

 

(a) 오른쪽에 귀여운 코끼리를 눌러

(b) build/build를 더블클릭해 빌드하고

(c) application/bootRun을 더블클릭해 실행한다.

 

 

4. 에러 잡기

(a) 처음 돌렸을 때 "finished with non-zero exit value 1" 에러 메시지가 떴다.

이미 8080포트에서 다른 프로세스가 구동되는 중이었기 때문에 뜬 에러.

 

해결방법:

- cmd에서
netstat -an |find /i "listening"

으로 현재 구동중인 프로세스들을 띄워,

 

- 포트 8080을 사용중인 프로세스의 PID를 알아낸다.

- 작업관리자에서 해당 프로세스를 찾아 end task해주면 됨.

 

(b) build는 잘 되었지만, run할 때 계속 끝나지 않으며

error 404가 떴는데,

이는 Gradle 설정을

Build and run using: IntelliJ IDEA,

Run tests using: IntelliJ IDEA

 

Gradle JVM: 프로젝트에서 사용하는 JDK 버전

로 해주니 해결됨.

 

(c) IntelliJ로 옮겨오기 전에 이클립스에서 구동시켜봤는데,

그 때는

java.sql.SQLNonTransientConnectionException

에러가 났다.

 

이는 내가 MariaDB (우리 프로젝트에서 사용하는 데이터베이스) 조차 설치를 안했었기 때문인데...!

MariaDB를 설치하니 이 부분은 해결.

 

(d) 이후에는

Could not connect to address=(host=localhost)(port=3306)(type=master) : (conn=4) Access denied for user 'study'@'localhost' (using password: YES)

와 같은 에러가 떴었고,

 

이는 우리 application에서

 

application.properties

사용하는 db와, username과 password에 해당하는 유저가 만들어지지 않았기 때문.

 

mysql에서

CREATE DATABASE catdb default CHARACTER SET UTF8;
CREATE USER 'study'@'localhost' IDENTIFIED BY '####';
GRANT ALL PRIVILEGES on catdb.* TO 'study'@'localhost';

와 같이

필요한 데이터 생성문을 입력해 데이터베이스 구축을 해주니 해결되었다.

 

 

5. Swagger 구동

모든 에러 해결 후

localhost:8080/swagger-ui.html

으로 들어가니, 백엔드 팀에서 잘 구축해주신 Swagger페이지가 드디어 보인다! 와훙!!

댓글