どうもコウタロウです。
今日はタイトルについて。
Eclipseでファセットのバージョンと一致しませんエラー発生
1、2年前から使っているEclipseでちょっと試したい事があり、プロジェクトのJavaバージョンを1.6->1.8に上げたんですね。
すると、こんなエラーが!!
Javaプロジェクト・ファセットって?
まずはこれが何なのかわからないのでちょっと調べてみる
ファセットは、Java EE プロジェクトの特性および要件を定義し、ランタイム構成の一部として使用されます。
プロジェクトにファセットを追加すると、そのプロジェクトは特定のタスクを実行するか、特定の要件を満たすか、または特定の特性を持つように構成されます。例えば、EAR ファセットはデプロイメント記述子を追加し、プロジェクトのクラスパスをセットアップすることにより、プロジェクトをエンタープライズ・アプリケーションとして機能するようにセットアップします。
あまり情報がなく、唯一IBMのページで上記の情報が。
つまり、Javaプロジェクトの機能や設定を定義してあることらしい
原因
ということは、ビルドパスから変えたJavaのバージョン1.8とプロジェクト・ファセットのJavaのバージョンがあっていないことが原因ということです。
そこまでわかれば簡単、早速直します。
解決方法
まず、念のため、ビルドパスの確認
プロジェクト(上記ハードコピーだとSpringWebProject) を右クリックしてプロパティを選択。
そこから「Javaのビルド・パス」、「ライブラリ」を選択するとJavaのバージョンが出ます。(1.8になってますね)
次にプロジェクト・ファセットの確認です。
こちらもプロジェクトの右クリックからプロパティを開きます。
ここでは、「プロジェクト・ファセット」を選択
おっ、こっちは1.6ですね。
これがエラーの原因です。
1.6の右の方に下矢印があるのでそこをクリックするとJavaバージョンを選択できるので1.8に変更してプロパティ右下にあるOKボタンを押下して下さい。
するとコンパイルが走りエラーが解消されます。
番外編(Macでのキーボードショートカット)
私はMac使ってるんですけどキーボードショートカットがeclipseで紹介されているものと違うんですね。
eclipseで右クリックすると下記のようにプロパティは「⌘l」ってかいてあるんだけど、実際はoption+Enterなんですね。なんでだろう?
下記サイトがしっかり紹介してくれてます。もし、Mac使っててキーボードショートカット困ったら下記サイトを参考にして下さい。
コメント