Java 5をサポートする「Apache Commons Lang 3.0」がリリース

 java.langパッケージを拡張する「Apache Commons Lang」の開発チームは7月20日、最新版「Apache Commons Lang 3.0」をリリースした。Java 5をベースとした、後方互換性のないバージョンとなる。

 Apache Commons Langは、Javaのjava.langパッケージに含まれていない機能を提供するライブラリ。Apache Software FoundaionのトッププロジェクトであるApache Commonsの下で開発されている。

 最新版は、Java 5の機能をサポートするためにAPIをgenerics化し、一部APIでvarargsをサポートした。さらにJavaそのものに含まれる機能を削除、非推奨部分も削除した。このため、後方互換性のないバージョンとなり、旧バージョンと並行して利用するには、コードのリコンパイルが必要となる。

 削除されたのはJava 5で提供される「Enum」をはじめ、「NestedExceptions」、mathパッケージ内の複数のRangeクラス、あまり利用されていなかったという「JVMRandom」など。SQLはターゲットとしてフォーカスしていないという理由から「StringEscapeUtils.escapeSql」も削除されている。

 いっぽう、新たに「concurrent」および「text.translate」という2パッケージが追加された。「concurrent」は、Java 5で加わったマルチスレッドプログラミング関連機能を補完するクラスで、「text.translate」はテキスト変換のためのプラグインAPI。「AnnotationUtils」、「EnumUtils」など新しいクラスも多数加わった。

 最新版はプロジェクトのWebサイトより入手できる。

Apache Commons Lang
http://commons.apache.org/lang

ダウンロード
http://commons.apache.org/lang/download_lang.cgi