繁体   English   中英

如何在不加载类的情况下从jar加载方法?

[英]How to load methods from a jar without loading class?

我正在尝试读取一个Jar文件,该文件包含几个类并在其中定义了方法。 我想从所有类中获取所有声明的方法,而不加载单个类。 可能吗?

这是我加载jar文件和方法的方式(使用到目前为止的类名)。

File urlclasspath = new File(newJarPath);
        URL urlarray[] = new URL[1];
        urlarray[0] = urlclasspath.toURI().toURL();
        ClassLoader loader = new ClassLoader(urlarray);
        Class<?> myclass = loader
                .loadClass($classname$);

        Object obj = myclass.newInstance();
        Method add = myclass.getMethod("add", new Class[] { Integer.TYPE,
                Integer.TYPE });
        add.invoke(obj,
                new Object[] { new Integer(var1), new Integer(var2) });

        if (obj == null) {
            System.out
                    .println("FAIL: Could not create an instance of the loaded class");
            }

提前致谢

类是具有in。的所有方法的容器。因此,要访问某个方法,必须首先加载该类。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM