JavaSE 7に対応したNetBeans 7.0
2011年4月、NetBeansの最新版である7.0がリリースされた。NetBeans 7.0では以下のような機能追加が行われている。
- JavaSE 7の新しい構文に対応
- WebLogic、GlassFishサポートの強化
- Oracleデータベースのサポート
- Maven3のサポート
- CDI、REST サービス、JPA、Bean Validationサポートの改善
- HTML5の編集のサポート
このほか、PHPやC/C++に関する機能強化も行われている。なお、ライセンスの問題からNetBeans 7.0ではインストール時にJUnitをインストールするかどうかを個別に確認される。必要に応じてインストールしておこう。
また、Ruby / Ruby on RailsおよびJavaFXのサポートが削除されている。ただし、Ruby / Rails用の開発支援機能についてはコミュニティによってメンテナンスは継続されており、別途プラグインとして導入することで利用可能だ。JavaFXサポートの削除も一時的なものであり、今後JavaFX 2.0に対応するとのことだ。いずれにしろこれらの機能を使用しているユーザは注意して欲しい。
JavaSE 7.0の機能を試してみる
NetBeans 7.0において最も注目すべき点はJavaSE 7に対応しているということだろう。もっとも、JavaSE 7自体はまだ正式にはリリースされていないため、現時点で実際にJavaSE 7を使用するにはJDKのDeveloper Previewをインストールする必要がある。
JavaSE 7ではいくつかの新しい構文が導入されている。たとえばジェネリクスを使用したコレクションの生成を簡潔に記述できたり、switch文の条件に文字列を使用できるようになっていたり、複数の例外をまとめてキャッチするための構文が追加されている。これらの構文をNetBeans 7.0で使用するためにはプロジェクトのプロパティーダイアログでソース/バイナリ形式にJDK 7を選択しておく必要がある。
ジェネリクスを使用したコレクションの生成
JavaSE 7以前
List<String> list = new ArrayList<String>();
JavaSE 7の場合
List<String> list = new ArrayList<>();
swicth文の条件に文字列を使用可能
String value = ...
switch (value) {
case "DOG":
System.out.println("わんわん");
break;
case "CAT":
System.out.println("にゃんにゃん");
break;
default:
break;
}
複数の例外のキャッチ
- JavaSE 7の場合
try {
...
} catch(SQLException | IOException ex){
ex.printSTackTrace();
}
NetBeans 7.0ではクイックフィックス(行番号のルーラの電球アイコンをクリックするか、エディタ上のエラー/警告箇所で[ALT]+[ENTER]で起動可能なエラーの自動訂正機能)でもこれらの構文に対応しており、JavaSE 7の構文に変換可能なコードについてはクイックフィックスで訂正することができる。
JavaEE関連の新機能
WebLogicのサポートが強化されたほか、Tomcat 7、JBoss 6、GlassFish 3.1に対応している。特にWebLogicのサポートの強化はOracleデータベースのサポートの強化(NetBeans上からストアドの編集が可能になっている)とあわせ、OracleによるSun買収の影響を強く感じさせるものといえるだろう。
JSF(Facelets)利用時のXHTMLエディタではELに関する機能が大幅に強化されている。補完時にJavadocのポップアップ表示が可能になっているほか、ELの構文チェックやマネージド・ビーンのプロパティ、メソッドの有無のチェックが可能だ。
また、マネージド・ビーンの使用状況の検索結果にELも含まれるようになった。リファクタリング時もマネージド・ビーンのクラス名、プロパティ名、メソッド名の変更と同時にELも修正することができる。
この他にもJSFでは拡張コンポーネントとしてPrime Facesの利用が標準でサポートされているほか、データベースのテーブルのCRUD処理を行うRESTful Webサービスを生成するウィザード、Bean Validation用のウィザードなどが追加されている。JavaEEを活用しているユーザにとってはNetBeansは強力なツールといえるだろう。
まとめ
NetBeansは最新仕様のいち早いサポートに定評があり、今回もリリース前のJavaSE 7に早速対応している。JavaSE 7は2011年7月にリリースされる予定だが、OracleによるSun買収などもあり紆余曲折の末のリリースとなる。当初期待を集めていたクロージャなどは結局JavaSE 7では採用されないこととなってしまったが、それでも新しく追加された構文やライブラリは開発効率の向上に役立つことだろう。NetBeans 7.0で一足先にJavaSE 7に触れてみてはいかがだろうか?