被调用的java类/方法可以访问主类路径吗?

时间:2017-09-13 03:00:02

标签: java reflection invoke

经过一番研究,我设法从jar文件中的类调用一个方法,如下所示:

URLClassLoader child = new URLClassLoader (new URL[] {(new File("myJar.jar")).toURL()}, Main.class.getClassLoader());
        Class<?> classToLoad = Class.forName ("com.myClass.TEST", true, child);
        Method method = classToLoad.getDeclaredMethod ("onEnable");
        Object instance = classToLoad.newInstance ();
        Object result = method.invoke (instance);

TEST课程:

public void onEnable() {
    System.out.println(TempClass.TestString);
}

TestString只是“Hello world”而TempClass位于“main”jar中, 和TEST类在myJar.jar中

在调用onEnable()方法时,它会为TempClass抛出NoClassDefError

“Client”jar有没有办法在运行时访问“Main”jar的类路径?

目标是调用“插件”,就像Craftbukkit / Spigot如何与插件一起使用,对于那些玩过它的人来说。

0 个答案:

没有答案