我的javafx代码已成功模糊但现在由于加载错误而无法运行.fxml来自main方法的文件

问题描述 投票:1回答:1

我混淆了包含.fxml文件的javafx代码以供查看。在使用命令行运行jar文件成功混淆后,它在main方法中显示代码无法加载.fxml文件的错误。

请帮忙

java javafx-8 proguard obfuscation sbt-proguard
1个回答
0
投票

这可能不是你想要的,但你总是可以使用FXML到java转换器来创建一个抽象类。 然后你有xml文件的控制器扩展抽象类,你将不得不删除initialize方法(它不再是必需的)并将任何处理事件的方法的@FXML注释更改为@Overrides。 此外,您将不再需要任何带有@FXML注释的字段,因为所有控件都可以通过抽象基类访问。如果你使用Netbeans,有一个插件可以通过插件门户网站提供,或者可以在这里找到一个独立的jar文件:https://www.tutorialon.com/p/fxmltojavaconverter.html

然后,您只需使用类构造函数,而不是加载fxml。例如,如果FXML中的根元素是BorderPane,那么你会使用类似的东西

BorderPane borderPane = new MyClass();
© www.soinside.com 2019 - 2024. All rights reserved.