Java 在模块信息中导入swing包

Java 在模块信息中导入swing包,java,swing,java-11,java-module,Java,Swing,Java 11,Java Module,我试图在一个简单的java项目中使用SwingAPI,其中需要在module-info.java中导入javax.swing包 我在EclipseIDE上使用openJDK-11 module ml.garba.testeur { requires javax.swing; } 这是JFrame实例 package ml.garba.testeur.vue; import javax.swing.JFrame; public class Fenetre_Testeur exten

我试图在一个简单的java项目中使用SwingAPI,其中需要在module-info.java中导入javax.swing包

我在EclipseIDE上使用openJDK-11

module ml.garba.testeur {
    requires javax.swing; 
}
这是JFrame实例

package ml.garba.testeur.vue;

import javax.swing.JFrame;

public class Fenetre_Testeur extends JFrame {

}
似乎swing包的导入不起作用


我需要帮助

因此,我认为您的问题可能在您的进口声明中

因为你只导入了

javax.swing.JFrame

您可能无法运行代码。然而,如果你尝试

导入javax.swing.*


希望它能起作用。

所以,我认为你的问题可能在你的进口声明中

因为你只导入了

javax.swing.JFrame

您可能无法运行代码。然而,如果你尝试

导入javax.swing.*


希望它能起作用。

模块信息声明必须声明所需的模块,而不是包

因此,您的声明必须

requires java.desktop;

有关现有模块和包含的导出包,请参阅。

模块信息声明必须声明所需的模块,而不是包

因此,您的声明必须

requires java.desktop;

有关现有模块和包含的导出包,请参阅。

我将javax.swing更改为java.desktopNice answer时已经解决了这个问题。如果读到的第一句话必须声明模块而不是它所需要的包,这会更有意义吗?或者,我是唯一一个多次阅读并提出疑问的人:这能改进以清晰地传达信息吗?@Naman我不确定你建议的替代方案是否更容易阅读。但我仍然愿意接受建议。当我将javax.swing更改为java.desktopNice时,我已经解决了这个问题。如果读到的第一句话必须声明模块而不是它所需要的包,这会更有意义吗?或者,我是唯一一个多次阅读并提出疑问的人:这能改进以清晰地传达信息吗?@Naman我不确定你建议的替代方案是否更容易阅读。但我仍然愿意接受建议;在理想情况下也不应该工作;也不应该在理想状态下工作。