GroovyベースのWebアプリフレームワーク「Grails 3.0」が公開

 WebアプリフレームワークGrailsの開発チームが最新版となる「Grails 3.0」をリリースした。「Groovy 2.4」バンドルなどの新機能を持つもので、出資元の米Pivotalの支援を受けて開発された最後のリリースとなる。Grailsは次の開発母体を探しているところだが、どこの団体にするかはまだ交渉中だという。

 GrailsはJava仮想マシン(JVM)上で動作する動的言語であるGroovy向けのWebアプリケーション開発フレームワーク。設定より規約のポリシーの下、開発者の生産性にフォーカスしている。JVMとのスムーズな統合、ORM統合、ドメイン固有言語(DSL)、ランタイムとコンパイルタイムのメタプログラミングモデル、非同期プログラミングなどの特徴を持つ。プロジェクトは米Pivotalの出資を受けてきたが1月、同じくPivotalの下にあるGroovyと共に3月末を持って出資打ち切りとなることを発表している。

 Grails 3.0は2011年12月に公開されたバージョン2からのメジャーアップデートとなる。Spring BootとGradleをベースに完全に書き直し、1月に公開された最新のGroovy 2.4をバンドルした。Springはバージョン4.1をサポートし、Spring Boot 1.2上に構築した。Spring BootはSpringを利用したスタンダロンアプリケーションの構築を容易にするもので、Tomcat、Jetty、Undertowなどのコンテナに組み込みできる起動可能なJARファイルの作成が可能という。

 ビルドシステムはこれまでのGantベースから、Gradleベースに移行されており、これまで以上にGradleプラグインエコシステムとの統合が容易になるという。新しいプラグインポータルはBintrayをベースとする。

 また、アプリケーションプロファイルコンセプトをサポートし、新たにプロファイルレポジトリを用意した。プロファイルではアプリケーション構造、コマンドセット、プラグイン、機能などを含むもので、これによりさまざまな開発環境や実装をターゲットにしたアプリケーションテンプレートを作成できるという。

 Grails APIの再設計も行われている。公開APIをgrailsの下に集約することを目的としており、非公開の内部APIはorg.grailsパッケージに集めた。コアAPIはGroovy Traitをベースに再構築したという。これらに加えてWeb関連、開発環境、テストについても機能強化が加わっている。

 Grails開発者によると、GrailsとGroovyへの出資を打ち切るというPivotalの方針変更を受け、プロジェクトは現在さまざまな非営利団体を話をしている段階だとしている。なお、Groovyは3月、Apache Software Foundation(ASF)に対しインキュベーションプロジェクトとなることを提案している。

 Gradle 3.0はプロジェクトのWebサイトより入手できる。

Gradle
https://grails.org/