在Eclipse中生成JavaDocs时出现“未找到模块”消息

o8x7eapl  于 2023-03-11  发布在  Java
关注(0)|答案(2)|浏览(229)

我尝试在应用程序中生成JavaDocs,但是,当我尝试时,我收到以下消息:

...\application\src\module-info.java:5: error: module not found: javafx.base
    requires javafx.base;
                   ^
...\application\src\module-info.java:6: error: module not found: javafx.fxml
    requires javafx.fxml;
                   ^
...\application\src\module-info.java:7: error: module not found: javafx.graphics
    requires transitive javafx.graphics;
                              ^
...\application\src\module-info.java:8: error: module not found: javafx.media
    requires javafx.media;
                   ^
...\application\src\module-info.java:9: error: module not found: javafx.controls
    requires javafx.controls;
                   ^
...\application\src\module-info.java:10: error: module not found: org.junit.jupiter.api
    requires org.junit.jupiter.api;

我也不太清楚这是什么意思。我试着用谷歌搜索,但没有找到任何有用的东西,找到了一个非常相似的问题,但从来没有答案。可能是什么问题?
我的类文件路径如下:...\应用程序\源代码\游戏\游戏.main
我的模块路径文件路径如下:...\application\src\module-info.java
我的应用程序运行良好,所以我不知道是什么问题。
下面是我的www.example.com的module-path.java样子:

module froggerGame 
{
    exports frogger.helper;
    exports frogger.builders;
    exports tests;
    exports frogger.controllers;
    exports frogger.world;
    exports frogger.actors;
    exports frogger.game;
    requires javafx.base;
    requires javafx.controls;
    requires javafx.fxml;
    requires javafx.graphics;
    requires javafx.media;
    requires org.junit.jupiter.api;
}

编辑:我设法修复了这个问题,问题是我没有正确设置Java可执行变量(JAVA_HOME、PATH_TO_FX),然后在JavaDocs的VM参数中,我必须包括--add-module位以及我的lib文件夹在JavaFX中的位置
谢谢。

93ze6v8z

93ze6v8z1#

这个问题似乎是Eclipse中一个长期存在的问题,自从Java 9被支持和JavaFX成为JavaSDK外部的一个独立模块以来就一直存在。
问题是Eclipse不会自动将与JavaFX模块相关的信息传递给JavaDoc调用,我想如果它必须为用户通常使用的每个模块都传递信息,这对Eclipse的开发人员来说将是一项不可能完成的任务。
谢天谢地,我们可以自己做。使用JavaDoc向导的第三个屏幕(单击两次“下一步”)允许我们指定VM选项。添加以下内容并更改JavaFX的安装路径。

--module-path "C:\Java\javafx-sdk-13.0.1\lib"

在此之后,您应该会发现您的JavaDocs生成时没有出现上述错误。我刚刚在我的2021-06版本中尝试了这个方法,它很有效,我在以前的版本中也使用过这个解决方案。

toe95027

toe950272#

我发现临时删除module-info.java文件,生成JavaDocs,然后点击撤销,使模块info.java恢复工作。
这是一个快速的修复方法,但是Eclipse确实需要JavaDoc向导上的一个小按钮来禁用掉毛。

相关问题