10

Eclipse には、問題の 1 つをクリックして [QuickFix] を選択することで、問題をすばやく修正するオプションがあります。

同じ問題を抱えた 100 を超えるエントリがたまたまありました。

'<>' 演算子は 1.7 未満のソース レベルでは使用できません

プロジェクトの目標レベルを 1.7 から 1.6 に変更したため

[問題] ビューでそれらをすべて選択して、クイック フィックスを試みましたが、次のエラー メッセージが表示されて失敗しました。

選択した問題には、適用可能な一般的なクイック フィックスがありません。

このような一般的なクイック フィックスが少なくとも 1 つ存在するため、このメッセージは明らかに間違っています。

推論された型引数を挿入します。

これは私が使いたいものです。

私の質問は、QuickFixes を適用できなかったために何か間違ったことをしたのでしょうか、それとも Eclipse のバグですか?

4

2 に答える 2

4

org.eclipse.ui.views.markers.WorkbenchMarkerResolution問題は、特定のクイック フィックスの実装が、拡張ポイントを使用して実装および登録することにより、一括操作を明示的にサポートする必要があることorg.eclipse.ui.ide.markerResolutionです。残念ながら、InsertTypeArgumentsOperationは一括操作をサポートしていません。

クイック修正タイプが一括操作をサポートしている場合は 、問題ビューに移動し、エラーの 1 つを選択して、Ctrl-1 (クイック修正) を押します。すべてのファイルで、選択したタイプのすべてのエラーを修正する機会を提供する必要があります。また、マウス ポインタをエラーの上に置き、「このタイプの xx 個の他のエラーを修正してください」というツールチップを待つこともできます。これにより、指定されたファイルのエラーのみが修正されます。

クイック フィックスが一括操作をサポートしていない場合は 、次のエラー メッセージが表示されます。

選択した問題には、適用可能な一般的なクイック フィックスがありません。

私の経験では、必要なクイック フィックスのほとんどは一括操作をサポートしていません。

多くの場合、元に戻すことができます

  • その他の操作 (インポートの整理など)
  • コードのリファクタリング (名前の変更、抽出など)
  • すべてを見つけて置き換える、貧乏人のリファクタリング
于 2016-11-16T06:44:28.147 に答える
0

日食には欠けているもの(または彼らが言うように機能はバグではない)だと思います。コードを修正するためにクイックフィックスに頼ることはありません。

私の提案: ランタイムの問題を回避するために、一括ではなく個別に修正することをお勧めします。

于 2013-07-17T16:15:44.573 に答える