エラーが発生すると赤い波線が表示されるので、IntelliJ は常にコンパイルしていますか? (オートコンプリート機能に加えて)または、ある種の疑似コンパイルを行っていますか?
合法的なコンパイルを行っている場合、これらのコンパイルされたクラスはどこに置かれますか? 個々のモジュール ターゲット フォルダではなく、そのディレクトリを JRebel に指定したいと思います。
エラーが発生すると赤い波線が表示されるので、IntelliJ は常にコンパイルしていますか? (オートコンプリート機能に加えて)または、ある種の疑似コンパイルを行っていますか?
合法的なコンパイルを行っている場合、これらのコンパイルされたクラスはどこに置かれますか? 個々のモジュール ターゲット フォルダではなく、そのディレクトリを JRebel に指定したいと思います。
カスタム言語用のプラグインを開発したときに学んだことから、IntelliJ はプロジェクトを明示的に作成するまで何もコンパイルしません。入力中に、レクサー/パーサーが無効なトークンまたはコード構造を検出します。その間、プロジェクト内のすべてのクラスとメソッドのインデックスとその依存関係、およびそれらの署名などを維持します.
入力を止めると、右ガターの上部に小さな色付きの目が表示されます。IDE が「アノテーター」と「コード インスペクション」を実行していることを示します。それらは、現在のインデックスとファイルの現在の状態 (インポート、宣言など) に基づいて、クラス、メソッド、および変数が有効かどうかを判断できます。未使用の変数、メソッド呼び出しの無効なパラメーターなどについても同様です。
長所:
javac
、潜在的なバグなど、気にしないことを検出できます (例:条件=
の代わりに==
使用while
)短所:
javac
ラベル付けされたバグトラッカーで多くの問題を見つけることができます。彼らが検出したものとコンパイラが出力するものとの違い)TL;DR: プロジェクトを作成するまで何も生成されません。.class
すべてが「手作業」で行われます。
すべてのモジュールについて、コンパイラの出力パスはModule SettingsのPathsタブから見つけることができます。JRebel プラグインは rebel.xml を自動的に生成し、Module Settingsからディレクトリ パスを取得するため、手動で場所を指定する必要はありません。IDE プラグインを使用して rebel.xml を生成するだけです。プロジェクト ビューでモジュールを右クリック -> JRebel - > rebel.xml を生成