728x90
스프링 부트 개념과 활용
3. 스프링 부트 원리
포스팅 참조 정보
GitHub
공부한 내용은 GitHub에 공부용 Organizations에 정리 하고 있습니다
해당 포스팅에 대한 내용의 GitHub 주소
실습 내용이나 자세한 소스코드는 GitHub에 있습니다
포스팅 내용은 간략하게 추린 핵심 내용만 포스팅되어 있습니다
https://github.com/freespringlecture/springboot-concept-uses/tree/chap03-08-jar
해당 포스팅 참고 인프런 강의
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8/dashboard
실습 환경
- Java Version: Java 11
- SpringBoot Version: 2.1.2.RELEASE
8. 독립적으로 실행 가능한 JAR
https://docs.spring.io/spring-boot/docs/current/reference/html/executable-jar.html
JAR 파일 하나로 실행
- mvn package를 하면 실행 가능한 JAR 파일 “하나가" 생성 됨
- spring-maven-plugin이 해주는 일 (패키징)
- 과거
uber
jar 를 사용- 모든 클래스 (의존성 및 애플리케이션)를 하나로 압축하는 방법
- 뭐가어디에서온건지알수가없음
- 무슨 라이브러리를 쓰는건지..
- 내용은 다르지만 이름이 같은 파일은 또 어떻게?
스프링 부트의 전략
스프링 부트
MANIFEST.FE
정보를 활용해서 JAR 하나로 애플리케이션이 구동 가능하게 만들어줌
모든 JAR 파일의 시작점은MANIFEST.FE
이고Main-Class
이다
- 내장 JAR : 기본적으로 자바에는 내장 JAR를 로딩하는 표준적인 방법이 없음
- 애플리케이션 클래스와 라이브러리 위치 구분
org.springframework.boot.loader.jar.JarFile
을 사용해서 내장 JAR를 읽는다org.springframework.boot.loader.Launcher
를 사용해서 실행한다
MAVEN
clean
mvn clean
package
mvn package
package Test Skip
mvn package -DskipTests
debug
-Ddebug
target에 생성된 JAR로 실행 가능
java -jar xxx.jar
728x90
'개발강의정리 > Spring' 카테고리의 다른 글
[스프링 부트 개념과 활용] 4-2. SpringApplication 1부 (0) | 2019.10.22 |
---|---|
[스프링 부트 개념과 활용] 4-1. 스프링 부트 활용 소개 (0) | 2019.10.21 |
[스프링 부트 개념과 활용] 3-7. 내장 웹 서버 응용 2부: HTTPS와 HTTP2 (0) | 2019.10.19 |
[스프링 부트 개념과 활용] 3-6. 내장 웹 서버 응용 1부: 컨테이너와 포트 (0) | 2019.10.18 |
[스프링 부트 개념과 활용] 3-5. 내장 웹 서버 이해 (0) | 2019.10.17 |
댓글