Java - 如何获取类调用方法

时间:2015-02-08 20:32:31

标签: java api exception plugins configuration

我目前正在开发一个软件API,因此我的用户可以创建插件并更改软件而无需修改程序本身,并允许没有编程知识的用户更改软件的运行方式。很像BukkitSpigot你看,我试图让类调用方法,这样我就可以得到plugin.yml。哪个,我知道怎么做。但它的格式为String。因为该类不在程序jar /项目中。它将抛出ClassNotFoundException。那么这里的任何人都知道如何让类以Class对象的形式调用方法吗?

1 个答案:

答案 0 :(得分:1)

获取我从未使用的调用类的一种方法,但我已经看到使用的java运行时(例如,在java.util.logging.Logger.getLogger()中)涉及@CallerSensitiveReflection.getCallerClass()。你可以尝试一下。

话虽如此,我不确定调用Class.forName()获取给定类名的类有什么问题。我没有看到另一个类在不同的JAR文件中的事实可能会对您产生影响;另一个类是JVM已知的(显然,因为它正在调用你的类),所以Class.forName()应该可以工作。