Eclipse3.6のHeliosがリリースされました。
新しい機能の解説はコチラに譲るとして、とりあえず使い勝手は3.5と大きく変わらないです。
各種プラグインも、特に問題なく動作している模様。
目立った点としては、コンパイラの精度が良くなったのか、これまで警告として検知出来なかったケースでも警告を検知できるようになりました。
例えば@Overrideが付いていないケースを正確に報告してくれるようになりました。
これまでは、検知できないケースが多々あったのですが。
コンパイラ関連で言うと、以下に示す変更点がインパクト大きいですね。
これは、広範囲にわたってソースの修正が必要になりそう。
rawタイプを扱うケースへ@SuppressWarnings("unchecked")を適用できなくなった
ジェネリクスにおける必要悪である@SuppressWarnings("unchecked")ですが、
3.6ではきたるJDK7に備え、仕様を変更したみたいです。rawタイプを扱うときに、
@SuppressWarnings("unchecked") List list = ...;
ではなくて、
@SuppressWarnings("rawtypes") List list = ...;
と書く必要があるらしい。
で、それだとEclipse3.5を使っているメンバーとコードを共有できないという問題があるので、
そのときはEclipseの起動オプションとして
-vmargs -DsuppressRawWhenUnchecked=true
を付ければ、これまで通りの@SuppressWarnings("unchecked")の仕様で動作します。
詳しくはコチラを参照。
僕もしばらくはコレで乗り切りるつもりです。
追記
恐れ多いことに、id:kompiro氏に当記事を言及いただきました。
どうもありがとうございました。