ClassLoaderUtils.java 983 B

123456789101112131415161718192021222324252627
  1. package me.km;
  2. import java.io.File;
  3. import java.lang.reflect.Method;
  4. import java.net.MalformedURLException;
  5. import java.net.URL;
  6. import java.net.URLClassLoader;
  7. public class ClassLoaderUtils {
  8. public static void loadDependencies() {
  9. try {
  10. URLClassLoader sysloader = (URLClassLoader) ClassLoader.getSystemClassLoader();
  11. Method method = URLClassLoader.class.getDeclaredMethod("addURL", new Class[]{URL.class});
  12. method.setAccessible(true);
  13. method.invoke(sysloader, getURL("mods/libs/SnuviScriptRecoded.jar"));
  14. method.invoke(sysloader, getURL("mods/libs/mysql-connector-java.jar"));
  15. } catch(ClassCastException ex) {
  16. System.out.println("system class loader is not of type URLClassLoader");
  17. } catch(Throwable t) {
  18. t.printStackTrace();
  19. }
  20. }
  21. private static URL getURL(String s) throws MalformedURLException {
  22. return new File(s).toURI().toURL();
  23. }
  24. }