| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
| 29 | 30 | 31 |
- 단위테스트
- input
- SpringBoot
- string
- 배열
- math
- 스프링부트
- 인텔리제이
- 문자열
- 자바문법
- Array
- 자바
- junit
- 정규식
- Visual Studio Code
- Java
- Eclipse
- js
- html
- list
- vscode
- HashMap
- ArrayList
- 자바스크립트
- java테스트
- IntelliJ
- 테스트자동화
- CSS
- javascript
- junit5
- Today
- Total
목록2026/03/17 (2)
어제 오늘 내일
혹시 아직도 배포할 때마다 이런 과정을 반복하고 계신가요? 로컬에서 ./gradlew build 실행 (한참 기다림) FTP나 SCP로 서버에 jar 파일 전송 서버 접속해서 기존 프로세스 죽이고(kill), 다시 실행(java -jar) 이 과정은 귀찮기도 하지만, 사람이 하기 때문에 반드시 실수가 발생합니다. 오늘은 이 과정을 로봇에게 맡기는 CI(Continuous Integration, 지속적 통합)를 GitHub Actions로 구현해 보겠습니다.1. CI/CD가 도대체 뭔가요?CI (Continuous Integration): "지속적 통합"개발자가 코드를 합칠(Merge) 때마다, 자동으로 빌드하고 테스트해서 "이 코드 문제없어!"라고 검증하는 과정입니다.CD (Continuous De..
"개발 끝났다!" 하고 좋아하기엔 이릅니다. 진짜 끝은 서버에서 돌아가는 것을 확인해야 끝이죠.Spring Boot가 혁명적인 이유는 바로 내장 톰캣(Embedded Tomcat) 덕분입니다. 서버를 설치하는 게 아니라, 서버를 내 코드 안에 넣어버리는 것이죠.이 모든 것을 가능하게 하는 실행 가능한 Jar(Executable Jar)의 비밀과 빌드 방법을 알아보겠습니다.1. 일반 Jar vs 실행 가능한 Jar (Fat Jar)우리가 평소에 라이브러리로 쓰는 Jar 파일과 Spring Boot가 만드는 Jar 파일은 다릅니다. 일반 Jar (Skinny Jar): 내가 짠 코드(.class)만 들어있습니다. 이것만으로는 실행 못 합니다. (의존성 라이브러리가 없으니까요) 실행 가능한 Jar (Fat..
