매니페스트 파일 읽기


jar 또는 war파일에는 /META_INF/MANIFEST.MF(매니페스트)파일이 있습니다.

여기에는 소소한 정보들이 있습니다.


이번 시간에는 그 소소한 정보들을 읽는 방법에 대해 알아 보도록 하겠습니다.

매니페스트 파일을 꼭 읽을 필요가 있냐???

결론 부터 말하면 굳이 필요는 없으나... 혹시나 하는 맘에 이글을 써봅니다. ^^;


매니페스트 파일을 읽을때 필요한 클래스는 아래와 같습니다.

- JarFile

- Manifest

-Attributes


소스는 정말 간단 합니다.


[샘플 소스]

import java.io.IOException;
import java.util.Map.Entry;
import java.util.jar.Attributes;
import java.util.jar.JarFile;
import java.util.jar.Manifest;



public class ManifestRead {

	/**
	 * @Method Name : main
	 * @Method 설명 : 매니페스트파일 읽기
	 * @param args
	 */
	public static void main(String[] args) {

		try {
			JarFile jarfile = new JarFile("/apache-tomcat-6.0.35/lib/catalina.jar");
			// 매니페스트 정보 취득
			Manifest manifest = jarfile.getManifest();
			// 속성 정보 취득
			Attributes mAttrib = manifest.getMainAttributes();
			
			// 속성정보를 출력
			for (Entry key : mAttrib.entrySet()) {
				System.out.println(key.getKey()+":"+key.getValue());
			}
			
			// 종료
			jarfile.close();
		} catch (IOException e) {
			e.printStackTrace();
		}

	}

}





[실행 결과]

Implementation-Vendor:Apache Software Foundation
Ant-Version:Apache Ant 1.7.0
Implementation-Title:Apache Tomcat
Implementation-Version:6.0.35
Specification-Vendor:Apache Software Foundation
Manifest-Version:1.0
Specification-Title:Apache Tomcat
Created-By:1.5.0_15-b04 (Sun Microsystems Inc.)
Specification-Version:6.0
X-Compile-Source-JDK:1.5
X-Compile-Target-JDK:1.5


샘플예제로 톰캣6의 catalina.jar파일의 매니페스트 파일을 읽어 출력한 결과입니다.

버전 정보를 알고 싶을때 용의 하게 쓰일수 있습니다. ^^;


감사합니다.