일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 프로그래머스
- SW
- redux-toolkit
- useDispatch
- sw expert academy
- 항해99
- 알고리즘
- JavaScript
- programmers
- redux-saga
- 매일메일
- 항해플러스
- java
- 자바
- react
- 코딩테스트합격자되기
- json-server
- redux
- createSlice
- Algorithm
- 테코테코
- axios
- Get
- Python
- react-router
- 이코테
- 리액트
- maeil-mail
- C++
- react-redux
- Today
- Total
Binary Journey
[Java][Springboot] (4) Spring 프로젝트 생성하기, VSCode Spring Initializer, 삽질의 연속 본문
[Java][Springboot] (4) Spring 프로젝트 생성하기, VSCode Spring Initializer, 삽질의 연속
binaryJournalist 2020. 11. 26. 21:08
같은 내용인데 방법이 달라 벌써 4번째 글을 쓴다.
Gradle 로도 할까말까 고민 중
VSCode 에서 ctrl + shift + P 를 누르면 검색칸이 뜨는데
거기에다 Spring이라고 타이핑하면
다음과 같이 뜬다.
나는 Maven이 더 익숙하니까 Create Maven Project로 해보겠다.
내 개발 환경 및 버전은 다음과 같다.
1. 플랫폼, OS: Windows 10 64bit
2. JDK: OpenJDK - AdoptOpenJDK 14
3. maven: apache-maven-3.6.3
Maven Project를 선택하면 Spring Boot version을 선택하라고 뜬다.
뭐가 좋을지 검색해본다.
여기저기 돌아다니다보니 Spring Boot 2.2.4 RELEASE 기준으로 Java 8이 필요하다고 한다.
나는 jdk 14니까 괜춘괜춘
jaxenter.com/spring-boot-2-2-6-170386.html
Spring Boot 2.2.6 adds support for Java 14 - JAXenter
Take a step forward and upgrade Spring Boot to 2.2.6. The new update includes 53 bug fixes, some new enhancements and features and Java 14 support.
jaxenter.com
이 글 보니까 Spring Boot 2.2.6 에 Java 14가 지원된다고 한다.
점점 뭘 써야 할지 헷갈리기 시작했다.
여전히 버전을 고르지 못한 가운데
VSCode 에 java home 경로 설정이 필요하다고 한다.
시스템 변수에 되어있음 되는 거 아닌가? 싶지만
혹시 모르니 설정해본다.
[File] - [Preferences] - [Settings] 를 클릭한다.
검색칸에 jdk 를 친 후 나타나는 항목에서 Java: Home 의 Edit in settings.json 라고 밑줄 쳐진 부분을 클릭한다
자동으로 커서가 잡힌 부분에 환경 변수에서 설정해놓은 JAVA_HOME 주소를 복붙하면 된다.
대부분 2.2.x 버전이 많아서
나는 2.2.12 버전을 사용하기로 하였다.
버전을 체크하고 나면 언어를 선택하라고 나온다
Kotlin으로도 언젠간 해봐야지
group id를 설정하라고 나오는데 찾아보니 group id는 자신의 프로젝트를 식별해주는 고유 아이디라고 한다.
4번째 글만에 이걸 알다니....!
더 찾아보니 인터넷 주소 뒤집은 형태로 보라고
group id 를 지정해주고 나니 arifact id 를 지정해주라고 한다.
artifact id는 버전 정보를 생략한 이름이라고 하는데 보통 프로젝트 id랑 동일하게 작성한다고 한다.
모르겠다.
개발 시작하면서 제일 어려운 게 작명이다.
뭐라 짓지
내 블로그 이름은 binary journey 인데 artifact id 로 하기엔 너무 긴 것 같다.
최근에 cruella 라는 닉네임도 생겼는데 그걸 쓰기엔 조금 그런데
일단 그냥 지어보겠다.
작명이 끝나면 war와 jar 중에 packaging type을 정하라고 나온다.
나는 일단 war로 하겠다.
java version도 체크하라고 나오는데
14가 나오는 걸 보니 앞서 버전 선택을 나름 잘찍었네
이제 거의 마지막인 것 같은데
dependencies 를 선택하라고 나온다.
(3) 편에서 했던 것보다 훨씬 친절하다.
그땐 작명만 하고 달랑 pom.xml만 생성됐던 것 같은데
VSCode로 backend setting 어렵다고 생각했는데 편견이었다.
나는 일단 이렇게 선택했다
enter를 누르면 작업할 폴더를 지정해주라는 창이 뜬다.
완료된 모습!
Application run 했는데 다음과 같은 오류가 떴다면
Exception in thread "main" java.lang.Error: Unresolved compilation problem: SpringApplication cannot be resolved
일단 vscode를 끄고
.m2/repository/org/springframework/boot
내 모든 폴더를 지운 후 다시 vscode를 실행하면
MAVEN 항목이 왼쪽에 생길 것이다.
Could not find or load main class org.apache.maven.wrapper.MavenWrapperMain
이라는 오류가 나며 또 실행이 안된다면
mvn -N io.takari:maven:wrapper
이걸 terminal에 쳐보자
1.(3) 편에서 본 것 같지 않은가?
그러고 나면 실행은 되는데...!
다시 오류
보아하니 database 설정을 해줘야 하는 것 같다.
이건 다음편에서 하겠다!
Spring project 생성은 이만 마치고 오늘 만든 project 로 쭉 이어나가 보겠다.
'Java | Spring' 카테고리의 다른 글
[Java] SLF4J LoggerFactory 사용 (0) | 2021.04.05 |
---|---|
[Java] Why does the string data type have a .toString() method? (0) | 2021.04.05 |
[Java][Java 8, Java 10] Optional 활용하기, orElseThrow (0) | 2020.11.26 |
[Java][Java 8] Optional 활용하기, orElseGet (0) | 2020.11.26 |
[Java][JPA][Issue] (datetime) 'COLUMN_NAME' cannot be null (0) | 2020.11.11 |