java - 在 Eclipse 中处理非公共(public)类

标签 java eclipse class

Java 中的非公共(public)顶级(即包私有(private))类不需要文件名匹配(例如,类 Foo 可以在 Bar.java 中定义)。我认为这样的功能不再有任何用处(因为多年前就引入了嵌套类)。

有时它会导致问题:经过一些重构后,我以文件名与它们的类名不匹配而结束,这让我(在提交时)和 Eclipse 感到困惑(有些文件虽然必须重新编译,但没有重新编译)。

有没有办法在 Eclipse 中禁止此类类?

最佳答案

我建议使用 Checkstyle ,它还有一个非常好的 Eclipse 插件,eclipse-cs .在给定检查配置的 eclipse-cs 配置中,在杂项下,有一个可以启用的“外部类型文件名”检查,描述为“检查外部类型名称和文件名是否匹配。例如,类 Foo 必须位于名为 Foo.java 的文件中。”。

为了真正“禁止此类”,甚至可以将此检查设置为具有“错误”严重性(默认情况下会阻止构建,至少在 Eclipse 中)——而不是默认的“警告”严重性.

作为额外的好处,使用 Checkstyle 不会将您限制在 Eclipse 中运行此检查。 Checkstyle 很容易集成到各种构建工具中,例如 Apache Maven,即使您或其他用户没有使用 Eclipse,也可以检查此问题。

关于java - 在 Eclipse 中处理非公共(public)类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7386145/

相关文章:

java - 从文件系统查看 Eclipse Run As 配置

ruby - 列出类对象的名称

python - 在一种方法中创建的属性在另一种方法中不存在

在不同命名空间中具有相同名称的 C++ 友元类

java - SWT Filedialog 打开主文件夹

java - 添加到ArrayList

java - 如何在不禁用 fadingEdge 的情况下设置 overScrollMode=never?

java - 无需额外命令即可删除尾随零

Eclipse Juno - Subversive SVN - 连接超时 - 抱歉,此连接已关闭

java - 为什么 eclipse 用颜色填充我的纹理?