IntelliJ IDEA「生成されたソースファイルは編集しないでください」バナーが消えない時の対処法
はじめに
開発しててふと気がつくと
IntelliJ IDEA のエディタ上部に以下のバナーが表示されてました。

生成されたソースファイルは編集しないでください。ソースが再生成されると変更が失われます。
package-lock.jsonとか開くと出るやつですよね
でも今回は本来のアプリケーションソース(自動生成物ではない)なのにこの警告が出て困惑したので対処法をメモしときます。
原因
プロジェクト直下に作成された .iml ファイルが、プロジェクトルートを誤って「Generated(生成ソース)」としてマークしているケースが多いです。
<!-- 例: project-name.iml 内に以下のような設定がある -->
<sourceFolder url="file://$MODULE_DIR$/src" generated="true" />
「Mark Directory as → Generated Sources Root」を誤ってルートディレクトリに対して実行してしまった場合などに発生するそうです。
解決手順
なんだかよくわからないが
以下の手順で解決できました。
1. .iml ファイルを削除
プロジェクト名.iml を削除します。
2. モジュール設定を確認・削除
- IntelliJ で
⌘;(macOS)またはCtrl+Alt+S(Windows)で設定を開く - Project Structure → Modules を選択
- 問題のモジュールが登録されていたら削除
4.必要なら再度import
最後に
なぜそうなったのかわからない。心当たりはない。
困った時は参考にしてみてね。