본문 바로가기
FullStack/21. Java

META-INF 폴더

by nakanara 2013. 3. 27.
반응형


지금까지 그냥 지나쳤던 META-INF 폴더에 대한 이야기가 KSUG 그룹스에서 나왔는데.

박성철님께서 상세히 설명해주셔서 기록 :)



"META-INF는 자바 패키징 기술인 jar의 일부입니다.

jar는 기본적으로 파일 포맷이 zip과 동일하지만 zip외에 부가적인 규약이 정해져 있고, 그 중 하나가 META-INF 디렉토리와 그 속 몇몇 파일의 포멧과 용도입니다.


반면에 WEB-INF는 웹 애플리케이션 용으로 (servlet 규격으로) 따로 만들어진 디렉터리죠.
스프링 설정 파일을 META-INF에 두는 이유는 해당 애플리케이션을 war가 아닌 jar로 패키징해서 배포할 수 있기 때문입니다.


보통 애플리케이션을 다중 계층 구조로 만들면서 계층별로 별도로 패키징할 계획이라면, 웹과 관련 없는 계층의 메타 데이터는 WEB-INF가 아닌 META-INF에 두는 것이 맞습니다."



반응형