본문 바로가기

프로그래밍/Spring

[스프링 부트] 프로젝트 시작하기 (Spring initializr)

이 글은 오늘 배운 내용을 정리하는 블로그 글 입니다. 


스프링부트 프로젝트를 처음 시작할 때 'Spring Initializr' 를 이용해서 시작하는 방법을 알아보겠습니다. 

IDE는 인텔리제이를 이용합니다. 

 

먼저  Spring Initializr 사이트('https://start.spring.io/')를 접속합니다. 

 

프로젝트에 필요한 정보를 설정합니다. 

  • Project: 빌드 시스템을 선택합니다. (요즘은 Gradle을 많이 사용합니다)
  • Language: 사용 언어를 선택합니다.
  • Spring Boot: 스프링 부트 버전을 선택합니다.
  • Project Metadata: Group ID와 Artifact ID를 입력합니다. (Artifact ID는 프로젝트의 이름이 됩니다)
  • Dependencies: 프로젝트에서 사용할 의존성을 선택합니다. (아래는 주로 사용하는 의존성을 임의로 나타내었습니다)
    • Spring Web
    • Spring Data JPA
    • Thymeleaf: UI가 필요없거나 다른 템플릿 엔진(예: mustache)을 사용하고자 하면 추가하지 않아도 됩니다
    • Lombok: Getter, Setter 자동 설정, 생성자 자동 생성 등 코드의 양을 줄여주는데 도움을 줍니다
    • H2 Database: 다른 DB를 사용한다면 추가하지 않아도 됩니다

설정 예시

입력을 다 했으면 하단에 있는 'Generate' 버튼을 선택합니다.  그럼 '{Artifact 이름}.zip' 파일이 다운로드 됩니다. 

이 파일을 자신이 관리할 경로에 복사하고 압축을 풀어줍니다. 

 

 

이제 인텔리제이를 실행합니다. 

프로젝트 선택 창이 뜨면 'Import Project'를 선택합니다. 

 

 

압축을 풀어두었던 경로에서 'build.gradle' 파일을 선택합니다. 

 

 

처음에 프로젝트를 로드하면, 관련된 의존성 파일들을 받아오는데 시간이 몇 분 걸립니다. 

 

로드가 끝나면 프로젝트가 정상적으로 실행되는지 최종 테스트를 해보겠습니다. 

프로젝트에서 'src -> main -> java -> {group id}.{artifact id} -> StartStpringbootApplication' 경로로 이동해서, 'main' 함수를 실행합니다. 

 

 

정상적으로 실행이 되었으면, 콘솔창에 아래 메시지가 출력 됩니다. 

... 생략
Tomcat started on port(s): 8080 (http) with context path ''
Started StartSpringbootApplication in 7.84 seconds (JVM running for 8.338)

 

웹브라우저를 실행하고 'http://localhost:8080/' 주소를 입력합니다.  아래와 같이 나오면 정상적으로 실행이 된 것입니다. 

 

여기까지 하면 스프링부트 프로젝트를 생성하고, 실행하고, 확인하는 작업이 완료됩니다. 

감사합니다. 

 


간혹 프로젝트를 실행할 때, 아래 메시지가 출력되는 경우가 있습니다.

 

Unnecessarily replacing a task that does not exist is not supported.  Use create() or register() directly instead.  You attempted to replace a task named 'StartSpringbootApplication.main()', but there is no existing task with that name.

이 경우에는 Gradle을 통하지 않고 인텔리제에서 빌드 및 실행을 하도록 변경해줘야 합니다. 

 

인텔리제이에서 'Preferences -> Build, Execution, Deployment' -> 'Build Tools' -> 'Gradle' 로 이동합니다. 

여기서 'Buld and run using' 과 'Run tests using' 값을 모두 'IntelliJ IDEA'로 변경합니다.