web-dev-qa-db-ja.com

Eclipseで「現在のテキスト選択をエディターで開くことができない」を取り除くにはどうすればよいですか?

押すとステータスバーにこのメッセージが表示されることがあります F3 Javaエディターのタイプ:

現在のテキスト選択はエディターで開くことができません

選択範囲をクリップボードにコピーして使用する場合 Ctrl+Shift+T [タイプを開く]ダイアログを開くには、値を貼り付けるとタイプが表示され、開くことができます。タイプはクラスパス上にあります(コンパイルエラーはありません)。

同じプロジェクト内の他のJavaエディターでは、F3/Ctrl-Clickが機能します。

「壊れた」エディタでは、内部フィールドとメソッドでのみ機能します。内部フィールドの場合、フィールドが定義されている場所でのみ機能します。フィールドが使用されているすべての場所が死んでいます。ただし、「MarkOccurrences」は機能します。

どうすればそれを取り除くことができますか?

これまでのところ、私は試しました:

  1. エディターを閉じて開きます
  2. プロジェクトをクリーンアップする
  3. すべてのプロジェクトをクリーンアップする
  4. Mavenコンテキストメニューの[プロジェクトの更新...]
  5. Eclipseを再起動します
  6. -cleanを使用してEclipseを再起動します

これは、m2e1.3.1がインストールされているEclipse3.7.2で発生します。

15
Aaron Digulla

[UPDATE]これは m2eとJDTの深さのどこかにあるバグ のようです。通常、複数のプロジェクト(Mavenマルチモジュール/リアクタビルド)があり、モジュールMAMB、およびMCが相互に依存している場合に表示されます。

MCMBに依存し、MAの内部パラメーター化されたタイプX.Y<T>に依存します。

andモジュールMBを閉じました。 MCのクラスパスでは、次のようになります。

MB.jar
MA

つまり、MBはクラスパスにJARとして存在し、MAはワークスペースからEclipseプロジェクトとしてインポートされます。

この状況では、Eclipseは、MAから内部パラメーター化された型を必要とする.class内のMB.jarファイルを読み取るときに混乱します。私の推測では、MB.jarの型が必要であり、それを解析してMAの型への依存関係を通知し、解析を試みて、Tの型パラメーターが解析後に解決できないことを検出します。 MBのはまだ終了していません。

3つの修正があります:

  1. MAを閉じます。これにより、すべてがJARとしてインポートされます。
  2. プロジェクトMBを開きます。
  3. 内部タイプをトップレベルタイプにする

[OLD]

これが発生した場合は、絶望の昇順で次の手順を試してください。

  1. エディターを閉じて、もう一度開きます。
  2. プロジェクトをクリーンアップする
  3. プロジェクトを閉じて、もう一度開きます。
  4. Eclipseを再起動します

それがすべて失敗した場合:

  1. 設定をエクスポートする
  2. Eclipseを終了します
  3. ワークスペース内のフォルダー.metadataを削除(または名前変更)します。一部のOSでは非表示のフォルダですが、そこにあります。
  4. Eclipseを再起動します
  5. 設定をインポートする
  6. すべてのプロジェクトを再度インポートします。このために、ワークスペースを選択します。 Eclipseはダイアログにすべてのプロジェクトを一覧表示し、それらすべてを一度に選択できます。

関連:

  • Bug 430605 -[select]現在のテキスト選択をエディターで開くことができません
6
Aaron Digulla

Eclipseには(少なくともLunaでは)非常に特定のワークフローに関するバグがあります。これはこの特定の質問に対する答えではないかもしれませんが、他の人には役立つかもしれません。

抽出されたjar(ソースコードとして)からsrc(srcフォルダーがインポートを実行する前にフォーカスを持っていることを意味します)フォルダーにインポートを実行し、ネストされたパッケージのネストされた* .Javaファイルにブレークポイントを配置した場合、ヒットしませんそれらのブレークポイント。動作させるには、「Open Declaration」を使用する代わりに、F3キーを押し続けて、ブレークポイントを設定する* .Javaファイルにアクセスし、左端の余白をダブルクリックしてブレークポイントを追加する必要があります。次に、実行> Debug As> Java Application。

2
MacGyver