如何修复fxml中的“无法派生.jar文件的模块描述符”错误

时间:2019-04-24 12:19:15

标签: javafx fxml

我想从JAR库获取图像到我的项目。

    <graphic>
        <ImageView>
            <Image url="@/toolbarButtonGraphics/general/TipOfTheDay24.gif"/>
        </ImageView>
    </graphic>

我已将库添加到模块中,这似乎是正确的,但是编译器会引发错误: 启动层初始化期间发生错误 java.lang.module.FindException:无法导出 filepath.jar 的模块描述符 引起原因:java.lang.IllegalArgumentException:jlfgr.1.0:无效的模块名称:'1'不是Java标识符。这是我的模块信息文件:

requires javafx.fxml;
requires javafx.controls;

opens sample;

感谢您的帮助!

3 个答案:

答案 0 :(得分:3)

您似乎没有正确执行步骤。添加新库时,首先,将其添加到模块中,然后必须将其添加到您的模块中 module-info 文件。

只需在module-info中添加一行 ---> requires <package-name>;

例如,我的包裹名称是 graphics-looks.jar ---> requires graphics-looks;

P.S。在将该jar添加到任何地方之前,请尝试对其进行重命名并通过从其名称中删除数字和其他字符来提供一个简单的名称。

答案 1 :(得分:0)

切换项目编程语言,在sdk和语言级别将其设置为版本11。它对我有用。

答案 2 :(得分:0)

根据 Tarun Dadlani 的回答。

首先,您需要将.jar文件添加到Modules中,如图所示。 Add .jar file to modules

其次,你需要添加一个新的lib到module-info文件,如图所示。 Add a new lib to module-info file

最后,重命名 .jar 文件以提供一个简单的名称。