[02.15]webjar

2796 단어 webjarwebjar

WebJars, 너는 누구?!

webjars 란 클라이언트에서 사용하는 웹 라이브러리를 JAR 파일 안에 패키징 한 것이다.

jar..?

jar 파일은 여러개의 자바 클래스 파일과 클래스들이 이용하는 관련 리소스( 텍스트, 그림 등 ) 및

메타데이터를 하나의 파일로 모아서자바 플랫폼에 응용 소프르웨어나 라이브러리를 배포하기 위한

소프트웨어 패키지 파일 포맷이다. ZIP 파일 포맷으로 이루어진 압축 파일이다.

아하!

그렇다면 우리는 webjar 를 통해서 압축된 jar 파일들을 미리 갖고 있게되고

필요한 파일들을 골라서

gradle 의 경우에는

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter'
	implementation 'org.webjars:webjars-locator-core'
	implementation 'org.webjars:sockjs-client:1.0.2'
	implementation 'org.webjars:stomp-websocket:2.3.3'
	implementation 'org.webjars:bootstrap:3.3.7'
	implementation 'org.webjars:jquery:3.1.1-1'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

위와 같이 implementation 에 추가해주기만 하면 빌드해주는 고마운 녀석이다.

  • JVM 기반의 웹 애플리케이션에서 클라이언트측 의존성을 손쉽게 관리할 수 있음
  • JVM 기반 빌드툴을 사용하여 클라이언트측 의존성을 다운로드
  • 사용하고 있는 클라이언트측 의존성을 파악할 수 있음
  • 수동적인 종속성을 자동으로 해결하고 선택적으로 RequireJS를 통해 적재
  • 메이븐 중앙저장소를 통해 배포된다.
  • JSDELIVR 에서 제공하는 공개 CDN 사용이 가능하다.

출처:

https://java.ihoney.pe.kr/428

[허니몬(Honeymon)의 자바guru]

위에서 implement 한 jquery 의 경우,

위와 같이 빌드되어 있는 것을 볼 수 있다.

잠시만...min.js..?

당황하지 마라. min.js 는 minify 의 줄임말로, 공백과 줄바꿈을 제거하여 용량을 줄인 파일이다.

사람이 알아보기에는 힘들지만 컴퓨터 입장에서는 알아볼 수 있고, 전송량이 적으니 실제 서비스에서

유용하게 사용된다.

그래서 위에서 빌드된 파일을

<script src="/webjars/jquery/3.1.1-1/jquery.min.js"></script>

위와 같이 사용 할 수 있게 된다. 위에서 3.1.1-1 과 같이 매번 버전을 작성하기 귀찮아하는

우리 개발자들을 위해서 같은 게으름을 공유하는 다른 개발자 분들이

webjar-locator 를 통해서 버전을 생략 할 수 있도록 해주셨으니 참고해서 사용하면 좋을 것 같다!

좋은 웹페이지 즐겨찾기