Javaの非公開のトップレベル(つまりパッケージプライベート)クラスでは、ファイル名を一致させる必要はありません(たとえば、クラスFooはBar.javaで定義することができます)。私はそのような機能は何も使われていないと思う(入れ子のクラスは何年も前に導入されたので)。Eclipseでの非公開クラスの扱い
時々問題が発生します:いくつかのリファクタリングの後、私はクラス名にマッチしないファイル名で終了しました。私は(コミットしている間に)混乱し、Eclipseも(いくつかのファイルは再コンパイルされませんでした。
Eclipseでこのようなクラスを禁止する方法はありますか?
使用しているEclipseのバージョンは何ですか?クラス名がファイル名と異なる場合、Eclipseがパッケージ保護されたクラスをコンパイルしないと言っていますか? – Ali
私は3.7.0を使用していますが、前述の再コンパイルの問題が起こったことがあります(再現できません)。それ以来、私は非公開のクラスを避けましたが、今度はできるだけ頻繁にそれらを再利用したいと思います。 – maaartinus
コンパイルの問題も再現できませんでした。しかし、私は非公開クラスのファイル名を検証するためにeclipseを取得する方法を知らない。私は個人的にこれを行うための方法はわかりません。いくつかのエラー/警告設定は、 'window> preferences> Java> Compiler> Errors/Warnings'の中にありますが、あなたの問題を解決できるものは何もありません。 Eclipseが内部クラスかどうかを判断できない可能性が高いと思います。クラスを公開するが、非公開のすべてのメソッド(コンストラクタを含む)は役に立ちますか? – Ali