클래스로더 커스터마이징 오픈소스 JCL을 소개합니다.

JAR파일을 런타임 도중 동적으로 로드, 언로드 할 수 있는 ClassLoader를 개선한 오픈소스입니다.

 

2016년에 Core 2.8버전까지 maven에 올라와 있으며 총 Usage는 26 정도입니다.

클래스로더를 커스터마이징 할 때 참고하기 좋을 것 같습니다.

 

GitHub 주소는 : 

https://www.notion.so/JAVA-Custom_ClassLoader-9c335079187b4cf18bc5d62ea593b39c#386d716a715d4a79859fae1dbb07d40e

JCL Core 주소를 통해서 maven에서도 사용 가능하다

JDK 1.5 이상을 필요로 하며 GITHUB에 간단한 예제 코드를 제공하고 있습니다.

런타임 도중 동적으로 Jar파일을 할당할 기회가 생기면 한번 활용해 보시기를 추천드립니다.

 

아래는 jar파일을 동적으로 할당할 수 있는 Github 소개의 튜토리얼 예시입니다. 

JarClassLoader jcl = new JarClassLoader();

  //Loading classes from different sources
  jcl.add("myjar.jar");
  jcl.add(new URL("http://myserver.com/myjar.jar"));
  jcl.add(new FileInputStream("myotherjar.jar"));
  jcl.add("myclassfolder/");

  //Recursively load all jar files in the folder/sub-folder(s)
  jcl.add("myjarlib/");

  JclObjectFactory factory = JclObjectFactory.getInstance();

  //Create object of loaded class
  Object obj = factory.create(jcl, "mypack.MyClass");

+ Recent posts