イナヅマTVログ

[grunt] CreateJSに学ぶライセンス表記と管理

| 0件のコメント

先日GREE Engineers’ Blogでとても興味深いエントリーがありました。
クライアントサイドJavaScriptのライセンス管理 がそのエントリーです。
実はこれ悩んでました。
JavaScriptライブラリやら自前コードなどを結合・圧縮したときにライセンスが消えてしまいチマチマと手作業でコピーしてました。
手動なので時にはライセンスをコピーし忘れ大変申し訳ない状態で納品なんてこともやらかしたり。
もっと良い方法がきっとあるはず…

圧縮には Google の Closure Compiler を使用してました。
Web Service ではなく compiler.jar をダウンロードして使用してます。
Getting Started with the Closure Compiler Application

CreateJSがどうしているのか気になったので調べてみました。

CreateJS

ご存じ Canvas 2D のステキ・ライブラリ。
一式ダウンロードすると結合・圧縮に使われたツールもフォルダ内に。

CreateJS は各 Class に相当する.jsファイルに分かれています。
各.jsファイルにライセンスが記載されています。
圧縮されたminファイルからは各ファイルのライセンスは無く別ファイル LICENSE ファイルの内容が記載されています。

圧縮は uglify を使用してました。

結合・圧縮、ライセンス表記の一連の作業はGRUNT を使用しているようです。
GRUNT The JavaScript Task Runner

grunt を使い config.json 記述順に uglify で圧縮し LICENSE ファイル記載のライセンスをminファイルに挿入してました。
これなら圧縮とライセンス管理が一度にできていいすね。

version.js にバージョン情報とビルド日付プロパティがあるのですが、これも grunt で Gruntfile.js package.json のバージョン情報を挿入し日付もコマンドが走った日時が挿入されます。

他にも Document の作成と Document フォルダの zip 圧縮にも grunt が活躍しています。
Document は YUIDoc が使われています。
コマンド一発で全部できちゃうなんて grunt すごいなー。

grunt 初心者です、ちゃんと使えるようになると便利なんだろうなーと思う今日この頃です。

コメントを残す

必須欄は * がついています