빌드
빌드는 소스코드를 실행할 수 있는 실행파일 산출물로 만드는 것
컴파일 및 링크 과정이 포함된다
- 컴파일: 소스코드를 컴퓨터가 처리할 수 있는 기계어로 변환
- 링크: 컴파일의 결과물들을 최종 실행가능 파일로 만들기 위해 연결 .. 라이브러리 같은 것들을 ...!
빌드 도구
빌드 도구는 빌드 과정을 자동으로 처리해주고 외부 라이브러리를 관리해주는 역할을 한다
라이브러리를 다운로드하고 컴파일하고 테스트하고 패키징하는 과정을 거친다
자바에서 사용하는 빌드 도구는 Ant, Maven, Gradle 이 있다
패키징
모듈별로 생성한 실행 파일들을 하나로 묶어 배포용 설치파일을 만드는 것
jar, war 파일로 패키징하게 되는데 ... 이 둘은 모두 자바 언어 툴에서 사용하는 아카이브 파일이다
jar
Java Archive
JAVA 어플리케이션이 동작할 수 있도록 자바 프로젝트를 압축한 파일
class 파일 (자바의 바이너리 코드), 라이브러리 파일을 포함
JRE 만 있어도 실행 가능
war
Web Application Archive
servlet / JSP 컨테이너에 배치할 수 있는 웹 애플리케이션을 압축한 파일
웹 관련 자원을 포함 (JSP, Servlet, JAR, Class, XML, HTML, JavaScript)
사전 정의된 구조 사용 (WEB-INF, META-INF)
별도의 웹서버나 WAS 필요
Maven
JAVA 기반 프로젝트 빌드 관리 도구, Lifecycle 에 따라 관리되고 동작한다
default 생명주기: validate - compile - test - package - verify - install - deploy
clean 생명주기: clean
site 생명주기: site - site-deploy
라이브러리를 pom.xml 에 추가하면 해당 라이브러리에 필요한 라이브러리까지 함께 내려받아 관리함
(POM: Project Object Model, 프로젝트 정보, 빌드 설정 및 환경, POM 연관 정보를 포함한다)
Gradle
귀여운 코끼리 로고가 잇따 ...
JAVA, C, Python 등을 지원한다
maven 은 XML 로 라이브러리를 관리해야 하는 반면,
gradle 은 스크립트 언어로 구성할 수 있기 때문에 복잡하거나 동적인 부분을 설정하기 편리하다
성능도 maven 보다 빠르다
Groovy Gradle VS Kotlin Gradle
보편적으로 groovy 를 사용한다
kotlin 으로 프로젝트를 하는 경우 언어를 통일하기 위해 kotlin gradle 을 사용하기도 한다
kotlin 은 IDE 에서 자동완성, 오류표시 등 지원이 잘 된다는 장점이 있다
'Study' 카테고리의 다른 글
vi, vim (0) | 2023.12.13 |
---|---|
DBMS - RDBMS, NoSQL (0) | 2023.11.03 |
운영체제 (0) | 2023.06.25 |
SPA MPA SSR CSR (0) | 2023.06.25 |
Node.js (0) | 2023.06.24 |