Class JarLoaders

All Implemented Interfaces:
Closeable, AutoCloseable

public class JarLoaders extends URLClassLoader
外部Jar的类加载器
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • JarLoaders

      public JarLoaders()
      构造
    • JarLoaders

      public JarLoaders(URL[] urls)
      构造
      Parameters:
      urls - 被加载的URL
    • JarLoaders

      public JarLoaders(URL[] urls, ClassLoader classLoader)
      构造
      Parameters:
      urls - 被加载的URL
      classLoader - 类加载器
  • Method Details

    • load

      public static JarLoaders load(File dir)
      加载Jar到ClassPath
      Parameters:
      dir - jar文件或所在目录
      Returns:
      JarLoaders
    • loadJar

      public static JarLoaders loadJar(File jarFile)
      加载Jar到ClassPath
      Parameters:
      jarFile - jar文件或所在目录
      Returns:
      JarLoaders
    • loadJar

      public static void loadJar(URLClassLoader loader, File jarFile) throws InternalException
      加载Jar文件到指定loader中
      Parameters:
      loader - URLClassLoader
      jarFile - 被加载的jar
      Throws:
      InternalException - IO异常包装和执行异常
    • loadJarToSystemClassLoader

      public static URLClassLoader loadJarToSystemClassLoader(File jarFile)
      加载Jar文件到System ClassLoader中
      Parameters:
      jarFile - 被加载的jar
      Returns:
      System ClassLoader
    • addJar

      public JarLoaders addJar(File jarFile)
      加载Jar文件,或者加载目录
      Parameters:
      jarFile - jar文件或者jar文件所在目录
      Returns:
      this
    • addURL

      public void addURL(URL url)
      Overrides:
      addURL in class URLClassLoader
    • addURL

      public JarLoaders addURL(File dir)
      增加class所在目录或文件 如果为目录,此目录用于搜索class文件,如果为文件,需为jar文件
      Parameters:
      dir - 目录
      Returns:
      the jarClassLoader