Java为应用程序创建插件/ mod加载器

时间:2016-09-23 14:18:33

标签: java classloader add-on

我有一个用Java编写的游戏,可以编写一个通用的ModLoader / AddonLoader应用程序。一个单独的应用程序/ api,允许您为我的项目创建mods / addons,添加我不希望在主应用程序中的额外实现。

但是我不知道该怎么做,我做了一些研究,我不太确定如何使mod / addon与一个与主应用程序交互的加载器交互以添加新功能/修改旧< / p>

非常感谢 埃利奥特

1 个答案:

答案 0 :(得分:0)

由于您正在寻找一些基本指导,我建议如下:

在核心应用程序运行后,您需要一种方法来提取类。这意味着您将需要在类路径上使用这些类。最简单的方法是让你的类路径包含一个像“addons”这样的文件夹,这样该文件夹中的所有jar都会自动出现在应用程序的类路径中。

一旦设置了类路径,就需要以某种方式使用适当的类。这部分很难说一般,因为它在很大程度上取决于你打算如何使你的插件工作。有些工具使用注释来帮助解决这个问题,您可以查看一些开源项目的示例。想到的是Maven,它在其插件系统中使用了注释。一般的概念是,您需要确定您拥有多少种不同类型的插件,以及如何识别它们并使用它们。

通常使用插件涉及实例化该插件,这就是为什么它可能很棘手。某些插件系统要求编写插件,以便使用特定的包名称。他们这样做是为了让他们可以利用反射来查找给定包中的所有类,然后处理它们。

希望有助于您入门!