将类(脚本?)添加到构建的java程序并在运行时执行它们的方法

时间:2013-03-26 16:44:22

标签: java class user-interface interface

我是来自德国的学生,正在研究我自己的第一个java项目。我正在构建一个小型GUI应用程序,用户应该对历史财务数据进行统计测试。 用户应该能够通过实现特定的接口来定义自己的测试方法(在java中)。 我的想法是让用户将他的类(作为.class / .jar ...?)保存在指定的文件夹中,从那里他可以在运行时检索它们。但我必须承认,我不知道如何实现......

我的问题是,这根本是可能的,如果是的话:我在哪里可以找到有关该主题的信息?如果不是,那么我怎样才能创建这样的“界面”,用户可以在构建程序后添加他的测试方法/脚本?

提前谢谢!

2 个答案:

答案 0 :(得分:2)

看看Janino,虽然它有其局限性(如不支持泛型)但它可以支持非常有趣的场景,如loading a class from Java sourcecode。它还允许您将“扩展”定义为完整类或代码块或单个语句。

如果您想要静态插件(在托管应用程序的一次运行期间不需要更改的插件),您可以使用jspf或其他基于Java的插件解决方案。

答案 1 :(得分:1)

定义自定义界面,让用户类实现该界面。这将允许您在运行时加载这些类并使用反射执行方法。

请检查此http://docs.oracle.com/javase/tutorial/reflect/