gpt4 book ai didi

java - 将 JavaFX Pane 动态加载为插件

转载 作者:行者123 更新时间:2023-12-02 03:37:53 24 4
gpt4 key购买 nike

我正在尝试开发 JavaFX 应用程序。我必须创建一个插件系统。我的应用程序由 GridPane 组成,其中有 4 个位置,我想在其中插入 4 个 AnchorPanes。

我希望这个 AnchorPanes 成为插件。我有以下架构:

My Application
+ src
+ controller
+ view
+ Main.java
+ res
+ lib
+ plugin
+ plugin.jar
+ plugin
+ Controller.java
+ view.fxml

我想使用加载程序动态调用我的插件。

FXMLLoader loader = new FXMLLoader();
loader.setLocation(new URL(path));
pane = loader.load();

如果我不碰任何东西,就会出现以下错误:

java.lang.ClassNotFoundException: plugin.Controller

如果我右键单击 .jar 并在 IDE 中选择“添加为库”,则它可以完美运行。但是,我想动态添加我的插件,所以我不能进行这种操作。我认为这是 ClassPath 的问题,但我不知道如何解决。

最佳答案

最好加载插件主类和主方法,然后您可以加载fxml文件,它也会加载fxml的 Controller 。最后将 Pane 对象(FXML NODE)返回到基础应用程序。

关于java - 将 JavaFX Pane 动态加载为插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38499255/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com