どちらかで誓う人から聞いたことがあります。どちらもフル機能を備えた優れたIDEです。ただし、それぞれの長所は少し異なります。これは神聖なIDE戦争になることを意図したものではありません。フレームベイトの回答に反対票を投じてください。ありがとうございます。
これは this question の類似物です。
IDEA(およびEclipseのお気に入りの小さな機能)で私のお気に入りの小さな問題は、開始中括弧(例: "{")またはセミコロンを入力するときの文字の位置です。 Eclipseで有効にします(ウィンドウ/設定/ Java /エディター/入力:「正しい位置に自動的に挿入:セミコロン、中括弧」)
これだけで先に入力します( "|"はキャレット位置です)
while(|
結果(まだ魔法はありません)
while(|)
true {と入力すると、結果は
while(true) {|
とてもシンプルでありながら強力です。
また、(例)
System.out.println("Hello world")
その行にキャレットanywhereがある場合、セミコロンを入力すると、自動的に行末にセミコロンが入力されます。お気に入りのワードプロセッサの通常の自動修正と同様に、バックスペースで修正されます。
貴重な。私は物理的に最初の試行でセミコロンを正しい位置に入力することができなくなりました:)
Eclipseのインクリメンタルコンパイラーを使用すると、無関係なコードでユニットテストを実行できます コンパイラーエラーがある場合でも 。 IntelliJは、すべてのコードが有効でない限りバイトコードを出力しないjavacに依存しています。
新しいAndroid Studioが原因でIntelliJに切り替えようとしました。しかし、私は今非常にがっかりしています。コード推奨者プラグイン。Eclipseが非常に優れている理由の簡単な例を以下に示します。
新しいSimpleTimeZone
を作成したい。 SimpleTimeZone
には、引数がゼロのコンストラクターがありません。
Ctrl + Eclipseのスペース
IntelliJのCtrl +スペース
IntelliJでは、SimpleTimeZone
がどのようなコンストラクターを持っているかについての情報は得られません。
Eclipseに入った後
以前に選択したコンストラクタに、事前定義された変数名を入力します。そして、私はすべての議論のタイプを見ることができます。 Code Recommendersを使用すると、Eclipseは現在のスコープで以前に定義された変数タイプによって適切なコンストラクターを推測し、コンストラクターにこれらの変数を入力します。
IntelliJでEnterキーを押した後、何も起こりません。空のコンストラクターを取得します。予想される引数を表示するには、Ctrl + Pを押す必要があります。
または簡単なことを試してください。タイプ
_syso<Ctrl+Space>
_
日食:System.out.println()
IntelliJ:syso
私の知る限り、Eclipseの優れた Mylyn タスクプラグインに代わるものはありません。
Eclipse 3.3以降(ただし plugin を使用する前に行うことができます)、Javaファイルを保存しながらアクションを自動的に実行できます:
これはPreferences> Java> Editor> Save actions)で設定できます。
Eclipseプラットフォームのオープンな性質により、プラグインライターコミュニティが繁栄しています。あらゆる種類のタスクに利用できるプラグインがたくさんあります。
私の好きなEclipse機能:
Intellijにjavadocを自動的に追加する方法がわかりませんが、EclipseではShift-Alt-jです。
IntelliJの好ましくない点(Eclipse開発者から)
タブキーは、1回のタブプレスでスポットを修正するためにインデントしません。
マルチプロジェクトは最初のものです...しかし、多くの人々が以前にそれをカバーしたので、私はそれを離れます。
ウィンドウの分割。 Eclipseでは、ウィンドウを好きな場所にドラッグするだけで移動できます。
フォントがひどい。私が見つけた次の最高のものに変更しました:Liberation Mono、サイズ14(設定>エディター>色とフォント>フォント)
XMLの強調表示は厄介です...太字を削除しました。
エディターウィンドウをプロジェクトナビゲーターで選択したファイルと同期します。デフォルトではこれを実行できません。毎回ボタンを押す必要がありますか???それを見つけた:
プロジェクトナビゲーターをダブルクリックしてもファイルが開かないことがあります。 3回クリックしてもうまくいかない場合があります。 4回クリックするだけで開きます! **これが答えです...ダブルクリックの速度が速すぎるというだけです。ダブルクリックに関してIDEAダブルクリックでファイルを開くのが難しい理由は、そのJavaプログラムの例IDEAは、X11リソースからダブルクリック速度を読み取ります。明示的に設定されていない場合、デフォルトで200ミリ秒になり、非常に高速です。より健全なしきい値を設定するには、〜/ .Xresourcesを作成して追加します。*。multiClickSpeed:400
Ctrl-1がEclipseで与える「ローカル変数にステートメントを割り当てる」という提案を取得する方法を理解できません。いつも使っています。
**うん!これは、変数リファクタリングの導入です。デフォルトでは、テキストを選択してCtrl + Alt + Vを押します。式が不完全または無効な場合でも、IntelliJは意図したことを推測して修正を試みます。
タブはすぐにスポットを修正するためにラインを取りません。
正しく自動完了できませんでした** Ctrl-Shift-Spaceが役立ちます...
ホットコードを再実行します。 Eclipseでは、デバッガーでメソッドを変更でき、フレームをリロードします。 **右クリック:ドロップフレーム
変数をダブルクリックして強調表示しますが、変数の他の出現箇所は強調表示されません。
非推奨のメソッドには取り消し線が引かれていません。
設定メニューで正しく検索できます。フィルターで除外されるのは、メニュー内のすべての文字列とは対照的に、トップレベルの名前です。 jdkを設定する場所が見つかりません!
オンザフライでコンパイルしません。「デバッグ」を押したときにのみコンパイルします。
「クラスを右クリックして「新規」>「JUnit」機能を選択する必要はありません。
デバッグ時にウィンドウが下に表示され、希望する場所に移動できません。 **折りたたまれているときに小さなアイコンをドラッグして、ポップアウトしたい側にドラッグします。
私が好きなこと:
Ctrl-Shift-V
デバッグ/実行アイコンをクリックするだけで実際に最後の構成が実行され、Eclipseはそれほどスマートではありません(またはスマートすぎますか???)。そして、私はそれを行う方法が好きではありません。
オートコンプリートは非常に優れています。
1回クリックするだけでブレークポイントが追加されます
コードの折りたたみ/展開はより良いようです。
Ctrl-Shift--(マイナス)すべて折りたたむ/折りたたむ。
「列モード」は、「編集-列モード」またはAlt + Shift +挿入でオンにすることができます
アイデアには drools プラグインがなく、外部エディタ(Excelなど)を統合するのは困難です。
Eclipseではエディターを最大化でき、IntelliJでは同様の機能であるエスケープをクリックできます。しかし、Eclipseでは復元できます。 IntelliJには、さらに苛立たしい同等の「最大化解除」機能はありません。
Eclipseでのみ、デバッガーでantビルドをステップ実行できます。
私は自分の Eclipse 3.6とIntelliJ 10.5の比較 をブログで要約しました(Eclipseと比較して、IIの好きなところやそこにないところに焦点を当てています)
私が見つけた最大の不満は(両方を使用して)、EclipseでAnt起動タスクを作成できることです。これらのタスクを使用すると、毎回編集することなく、異なるプロパティ/引数のセットを使用して、同じビルドファイルで同じAntタスクを実行できます。
IDEAでは、プロパティはビルドファイル全体で設定されます。そのため、編集せずに同じプロパティを異なるプロパティで実行できないだけでなく、異なるビルドファイルにない限り、異なるプロパティで異なるAntタスクを実行できません。
全体的に私は両方のIDEで優れた作業経験を持っていたので、どちらにも多くの優れた機能があります。 IDEA 9_0_3で、SVNの操作で奇妙な問題が発生しています。リポジトリビューで変更の履歴を確認できますが、受信した変更として何も表示されません。イライラします。代わりに、ディレクトリを更新しますそれは最新のものをもたらしますが、選択の余地はありません。
実用的なSubversion統合については、 アイデアのバグSubversionプラグイン をご覧ください。