Play에서 WebJars 적용

Play에서 js,css,이미지를 참조할때는 Assets 컨트롤러를 사용해야 한다. 예를 들어 Bootstrap 3.x 버전을 적용하고 싶다면 먼저 public 디렉토리에 필요한 파일을 복사하고 View 템플릿에서 css와 js를 링크시킨다.

하지만 이 방식은 정적 컨텐츠에 대한 버전관리를 어렵게 한다.

그래서 WebJar를 적용해 봤다. Bootstrap 3.3.5를 쓰고 싶다면

  • build.sbt에 bootstrap에 대한 종속성을 추가한다.

뷰 템플릿에 Bootstrap에 대한 CSS,JS를 추가한다.

주의해서 봐야할 부분은 패스이다. WebJar는 lib 디렉토리 밑으로 자동풀림되기 때문에 패스틑 lib로 시작한다. 정확한 위치는 target/web/public/main/lib 가 된다.
버전은 붙이지 않는다. 그래야 새로운 버전이 올라갈때마다 참조링크를 수정할 일이 생기지 않는다.

내가 필요한 라이브러리가 WebJar로 제공되는지는 http://www.webjars.org/ 에서 획인할 수 있다.