서버에서 웹페이지를 가져올 때 필요한 css, js파일도 가져오게 됩니다.
이때 css, js파일에 대한 리소스를 최소화시키기 위하여 Minify(경량화)를 시킵니다.
보통은 로컬에서 개발을 마친 후 배포하기전에 경량화를 하는데 이때 maven프로젝트에서 편리하게 경량화하는 방법을 소개하겠습니다.
이때 css, js파일에 대한 리소스를 최소화시키기 위하여 Minify(경량화)를 시킵니다.
보통은 로컬에서 개발을 마친 후 배포하기전에 경량화를 하는데 이때 maven프로젝트에서 편리하게 경량화하는 방법을 소개하겠습니다.
세팅
YUI Compressor를 사용하기 위해서는 pom.xml에 plugin을 추가해줘야합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<version>1.5.1</version>
<executions>
<execution>
<goals>
<goal>compress</goal>
</goals>
</execution>
</executions>
</plugin>
|
cs |
실행
플러그인을 추가했다면 이제 minify를 실행할 수 있습니다.
Eclipse 프로젝트 우클릭 -> Run As -> Maven Install를 실행해줍니다.
실행이 완료되면 배포파일이 생성되고 js ,css 파일 각각에 대한 -min파일이 생성됩니다.
추가 설정
만약 경량화를 진행할 때 파일명 변경을 원치 않으시다면 아래의 코드를 추가하시면 됩니다.
Eclipse 프로젝트 우클릭 -> Run As -> Maven Install를 실행해줍니다.
실행이 완료되면 배포파일이 생성되고 js ,css 파일 각각에 대한 -min파일이 생성됩니다.
추가 설정
만약 경량화를 진행할 때 파일명 변경을 원치 않으시다면 아래의 코드를 추가하시면 됩니다.
1
2
3
|
<configuration>
<nosuffix>true</nosuffix>
</configuration>
|
cs |
또한 프로젝트 내 위치하는 파일들 중 minify 대상에서 제외할 파일들을 설정할 수 있습니다.
1
2
3
4
5
6
7
|
<configuration>
<excludes>
<exclude>[제외할 대상]</exclude>
<exclude>**/*.min.js</exclude>
<exclude>**/*.min.css</exclude>
</excludes>
</configuration>
|
cs |
해당 예시는 프로젝트 내 모든 경로에서 min.js, min.css로 끝나는 파일들을 전부 제외하는 것을 의미합니다.
지금까지 YUI Compressor를 활용한 코드 경량화 방법을 알아봤습니다~~
참고 : http://davidb.github.io/yuicompressor-maven-plugin/
댓글