【发布时间】:2019-04-01 16:48:13
【问题描述】:
我昨天刚刚下载了 Java 的 eclipse,但是当我尝试制作我的第一个程序时,我一直收到这个错误:
must declare a named package eclipse because this compilation unit is associated to the named module x.
我该如何解决这个问题?
【问题讨论】:
标签: java error-handling
我昨天刚刚下载了 Java 的 eclipse,但是当我尝试制作我的第一个程序时,我一直收到这个错误:
must declare a named package eclipse because this compilation unit is associated to the named module x.
我该如何解决这个问题?
【问题讨论】:
标签: java error-handling
错误原因: 创建类时包名留空。这利用了默认包。从而导致此错误。
快速修复:
helloWorld 在src 文件夹中。helloWorld.java 文件移动到该包中。只需拖放
包裹。错误应该会消失。说明:
最新版本的 Eclipse 需要 java11 或更高版本。 module 特性是在 java9 及更高版本中引入的。它于 2005 年针对 Java7 提出,但后来被暂停。 Java是基于面向对象的。而 module 是可以在 C 之类的语言中看到的 moduler 方法。它更难实现,因此发布需要很长时间。 来源: Understanding Java 9 Modules
W当您在 Eclipse 中创建一个新项目时,默认情况下会选择模块功能。在 Eclipse-2020-09-R 中,会出现一个弹出窗口,要求创建 module-info.java 文件。如果您选择don't create,则module-info.java 将不会创建,您的项目将不会出现此问题。
最佳做法是在创建项目时,在给出项目名称之后。单击next 按钮而不是finish。在底部的下一页上,它要求创建module-info.java 文件。根据需要选择或取消选择。
如果选择:(默认)点击finish 按钮并为模块命名。现在在创建类时不要忘记提供包名。每当您创建一个类时,只需给出包名称。任何名称,不要留空。
如果取消选择:没有问题
【讨论】:
“在 Project Explorer 选项卡中删除 module-info.java”答案是最简单、最直接的答案,但是
对于那些希望一点了解或控制正在发生的事情的人,可能需要以下替代方法;
或
【讨论】:
只需在 Project Explorer 选项卡中删除 module-info.java。
【讨论】: