Java+JavaFX2 项目 : modular content

标签 java javafx-2 modularity modular

我是 java 和 javafx 2 的新手。 我想要做的是一个应用程序,它基本上是一个容器,用于放置以后可以添加的单独“模块”。

主要应用程序应该是某种内容浏览器,用于扫描文件夹中的模块。 然后,您可以选择所需的模块(例如,一个小游戏)并在主应用程序(如框架)中打开它。如果我可以选择全屏显示(仅模块,没有主应用程序),我也会喜欢它。 主应用程序和模块也应该能够通信(例如,发送“难度”或“起始级别”等设置并接收分数/结果)。

您知道我应该如何实现模块化(同时不失去相互通信)吗?

我试图在 Google 上查找它,但我可能不知道正确的技术术语...因此,我们将不胜感激!

注意:我是一个 GUI 菜鸟(我的大部分编程经验都是基于 CLI 的,而且水平相当低)。

编辑:奇怪,它删除了“嗨!”从第一行开始……我想有些规则迫使我们变得粗鲁;)……

最佳答案

看看 Java 6+ 中的 ServiceLoader 类,互联网上有大量关于它的文档,但其要点是您可以请求它实现在配置的类路径上找到的接口(interface)。例如,您可以拥有以下界面:

interface AppPlugin {
    Node getContentNode();

    String getName();
}

然后插件需要实现此接口(interface)并配置为由 ServiceLoader 加载。在此处查看教程:

http://weblogs.java.net/blog/timboudreau/archive/2008/08/simple_dependen.html

关于Java+JavaFX2 项目 : modular content,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12761856/

相关文章:

java - 共享网 : How to send a file over FTP using ASCII without changing LF to CRLF

java - 这是循环引用吗?

android - 如何模块化地为不同版本的应用程序保留服务器端应用程序

ruby - 我应该明确要求每个文件中的所有依赖项吗?

javascript - 解耦 Angular 模块

java - 在 Java 中裁剪图像

java - 在 Java Web 项目中编译 Servlets 和其他类

java - 更新 .jar 的 jar 命令的快速替代方法

java - FXMLLoader 如何加载 FXML 的 Controller ?

controller - 子 Controller 未注入(inject)主 Controller