Java SE 7 Update 4 での変更点

Java 7 の Update 4 がリリースされたようですのでリリースノートから気になる点を拾い読み。

OS X サポート

AppleJavaOS X 対応を止めてしまったために Java 7 リリースから半年ほど遅れましたが、このバージョンからやっと利用できるようになりました。いくつか制約があって:

  • OS X 10.7 Lion 以降、64bit 版のみの提供。
  • 「開発目的のみ」つまり製品版アプリケーションでの使用はサポートされない。
  • Java Plugin、Java Web Start などのデプロイは含まれていない。
  • 幾つかのサービス機能が機能しない。

Oracle としては初の OSX 対応だからまだ試験的な部分があるようです。とりあえずウチの Leopard は見捨てられているようですが… OS X へのインストール方法はこちら: http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html

Garbage-First GC サポート

今まで Experimental だった Garbage-First (G1) GC がようやく Full Support となりました。G1 GC は世代別 GC の進化版。広大なメモリとマルチプロセッサを備えたサーバ環境での GC の並列性能を高める事ができます。Stop the World として許容できる目標時間を指定できる安心感。ちなみに仕事場の Hadoop / HBase 6 物理ノード環境で検証していますが応答速度が 110〜150% 程度改善されました。

その他

あとはざっと気になる点を箇条書きで。

  • -XX:+UseParallelGC が有効な場合はデフォルトで -XX:+UseParallelOldGC が有効になるようになった。
  • jcmd という実行状況分析用コマンドが追加された。
  • JavaFX 2.1, JAXP 1.4.6, Java DB 10.8.2.2 へバージョンアップ。
  • -XX:+UnlockCommercialFeatures で商用ライセンスによりロックされていた機能を解除できるようになった。
  • -XX で未定義の拡張オプションが指定された時、エラーメッセージにそのオプションを表示するようになった。
  • もろもろのバグフィクス。