ClassLoaderRepository

ClassLoaderRepository (클래스로더 저장소 인터페이스)

MBean 서버에 등록된 ClassLoader들의 목록을 유지하는 데 사용되는 인터페이스예요. 등록된 ClassLoader를 이용해 클래스를 로드하는 데 필요한 메서드를 제공해요.

출처: Java API Reference

본문

ClassLoaderRepository 안의 첫 번째 ClassLoader는 항상 MBean 서버 자신의 ClassLoader예요. MBean이 서버에 등록될 때, 그 MBean이 ClassLoader의 하위 클래스이고 PrivateClassLoader 인터페이스를 구현하지 않았다면 MBean 서버의 ClassLoaderRepository 끝에 추가돼요. 이후 MBean 서버에서 등록이 해제되면 저장소에서 제거돼요.

저장소 안의 MBean 순서는 의미가 있어요. 두 MBean X와 Y가 있을 때 X의 등록이 Y의 등록보다 먼저 완료되었다면 X가 반드시 Y보다 앞에 와요. 동시에 등록됐다면 순서는 정해지지 않아요.

MBean 등록은 MBeanServer.registerMBean(Object, ObjectName) 또는 MBeanServer.createMBean 메서드 호출에 해당해요. 등록된 ClassLoader를 통해 클래스를 찾고 로드하는 데 활용돼요. Java 1.5부터 제공돼요.

더 알아보기 (Learn more)

Java 공식 API