- 아래 위키독스를 참조하여 진행
http://honeymon.io/tech/2021/01/06/use-vs-code-for-spring-boot.html
기본 설치 페이지는 해당 페이지를 참조하여 설치한다.
Required Extension
- Extension Pack for Java
- Spring Boot Extension
- Lombok Annotations Support for VS Code
- VS Code의 Extension은 "Ctrl + Shift + x" 또는 VS Code 왼쪽 탭 - Extensions에서 위 확장팩을 검색하여 설치 진행.
프로젝트 생성
- VS Code에서 ctrl + shift + p
- Spring initializer: Gradle 선택
- Spring Boot version 선택: 3.0.5 (버전은 사용자 마음껏 지정. 본인은 해당 버전 사용)
- Project language 선택: Java
- Group Id 등록: com.mysite (Default는 com.example)
- Artifact Id 등록: sb-for-vsc
- Packaging type 선택: JAR
- Java Version 선택: 17 (17 버전 사용. 8도 가능)
- Search for dependencies: Spring Web
*** Gradle error 또는 Java Home, Java 에러 발생 시
- VS Code - File - Preferences - settings
- java_home 검색
- settings.json을 열어 다음과 같이 설정
{
"files.autoGuessEncoding": true,
"[python]": {
"editor.formatOnType": true
},
"java.jdt.ls.java.home": "C:\\\\Program Files\\\\Java\\\\jdk-17",
"java.configuration.runtimes": [],
"spring-boot.ls.java.home": "",
"java.import.gradle.java.home": "C:\\\\Program Files\\\\Java\\\\jdk-17"
}
- java 버전은 17로 설정하고, Gradle upgrade 진행(java 20은 gradle error로 진행 안됨)
- build.gradle → sourceCompatibility를 17로 설정
- gradle-wrapper.properties → gradle-7.4.2로 변경
*** cannot resolve the modulepaths/classpaths automatically 발생 시
- 아래 페이지 참조
2. 프로젝트 맛보기
HelloController
- 브라우저의 요청을 처리하기 위해서 컨트롤러가 필요함.
- 컨트롤러는 서버에 전달된 클라이언트의 요청을 처리하는 자바 클래스
- src - main - jav… 경로에 HelloController.java 파일 생성
- 소스코드를 아래와 같이 작성
package com.example.sbb;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@GetMapping("/test")
public String test(){
return "test!";
}
}
- src - main - java… - Main 함수가 포함된 java 파일 실행
- localhost:8080/test로 이동하여 확인
3. 프로젝트에 사용된 dependencies
plugins {
id 'java'
id 'org.springframework.boot' version '3.0.5'
id 'io.spring.dependency-management' version '1.1.0'
}
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '17'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
compileOnly 'org.projectlombok:lombok'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
tasks.named('test') {
useJUnitPlatform()
}
반응형
'개발 공부 > Spring Boot' 카테고리의 다른 글
Spring Boot - 댓글 (0) | 2023.06.13 |
---|---|
Spring Boot - 답변 페이징 (0) | 2023.05.30 |