From 3c6dc27fafd8d185461f3de41ee1510dac6e3890 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?IT=E5=90=9B?= Date: Sun, 24 Jan 2021 21:10:37 +0800 Subject: [PATCH] update TestAddUrl --- 01jvm/TestAddUrl.java | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 01jvm/TestAddUrl.java diff --git a/01jvm/TestAddUrl.java b/01jvm/TestAddUrl.java new file mode 100644 index 00000000..9639fba9 --- /dev/null +++ b/01jvm/TestAddUrl.java @@ -0,0 +1,26 @@ +package io.kimmking.kmq; + +import lombok.SneakyThrows; + +import java.io.File; +import java.lang.reflect.Method; +import java.net.URL; +import java.net.URLClassLoader; + +public class TestAddUrl { + + @SneakyThrows + public static void main(String[] args) { + URLClassLoader classLoader = (URLClassLoader) TestAddUrl.class.getClassLoader(); + String dir = "/Users/kimmking/Downloads/Hello"; + Method method = URLClassLoader.class.getDeclaredMethod("addURL", URL.class); + method.setAccessible(true); + method.invoke(classLoader, new File(dir).toURL()); + + Class klass = Class.forName("Hello",true, classLoader); + Object obj = klass.newInstance(); + Method hello = klass.getDeclaredMethod("hello"); + hello.invoke(obj); + } + +}