GithubにあるjQueryのコードをビルドする方法
普段、jQuery(本体)のコードを見たりする時にウェブだと見づらいので、ローカルにダウンロードして見ているのですが、jquery/jquery – GitHubからpullしたものにはビルドしたjQuery.jsが含まれていないので、ビルドできる環境を整えてみました。
以前はDownloading jQuery – jQuery JavaScript Libraryに書いてあるようにAntを使ってどのOSでもビルドできたようですが、現在はuglifyやJSLintを使う都合上かも知れませんがNode.jsがビルド環境に必要となっています。
jQueryの開発コードをビルドして使う (Win & Mac) – Rewish の後半がNode必須になった感じ。
環境はWindows7 6bitで、cygwinでもNode使う事ができるのでやればできるみたいですが、VM上のUbuntuをつかって作業しました。
参考
必要なもの
- git
- node.js環境
jQueryのコードはgithubからcloneして持ってきます。
*git clone –recursive *https://github.com/jquery/jquery.git するのが楽ですが、他の方法もjquery/jquery – GitHubに書いてあります。
$# git clone --recursive https://github.com/jquery/jquery.git # githubからサブモジュールも含めて再帰的にclone Initialized empty Git repository in /media/sf_D_DRIVE/MyDocuments/Dropbox/workspace/toybox/lib/jquery/.git/ remote: Counting objects: 18336, done. remote: Compressing objects: 100% (5977/5977), done. remote: Total 18336 (delta 13065), reused 17001 (delta 11817) Receiving objects: 100% (18336/18336), 12.53 MiB | 1.04 MiB/s, done. Resolving deltas: 100% (13065/13065), done. Submodule 'src/sizzle' (git://github.com/jquery/sizzle.git) registered for path 'src/sizzle' Submodule 'test/qunit' (git://github.com/jquery/qunit.git) registered for path 'test/qunit' Initialized empty Git repository in /media/sf_D_DRIVE/MyDocuments/Dropbox/workspace/toybox/lib/jquery/src/sizzle/.git/ remote: Counting objects: 1422, done. remote: Compressing objects: 100% (622/622), done. remote: Total 1422 (delta 903), reused 1169 (delta 734) Receiving objects: 100% (1422/1422), 526.34 KiB | 243 KiB/s, done. Resolving deltas: 100% (903/903), done. Submodule path 'src/sizzle': checked out '4bcc09702d6dadfd0b90c7de3c8b206e97ff97f4' Initialized empty Git repository in /media/sf_D_DRIVE/MyDocuments/Dropbox/workspace/toybox/lib/jquery/test/qunit/.git/ remote: Counting objects: 995, done. remote: Compressing objects: 100% (751/751), done. remote: Total 995 (delta 415), reused 661 (delta 241) Receiving objects: 100% (995/995), 158.30 KiB | 98 KiB/s, done. Resolving deltas: 100% (415/415), done. Submodule path 'test/qunit': checked out '9887663380693009874e8c76f0bf77a921931766' $# cd jquery/ $# ls GPL-LICENSE.txt MIT-LICENSE.txt Makefile README.md build speed src test version.txt $# make # makeコマンドでjQuery.jsとjQuery.min.jsを生成 Building selector code from Sizzle Building ./dist/jquery.js Minifying jQuery ./dist/jquery.min.js Checking jQuery against JSLint... JSLint check passed. jQuery build complete. $# ls dist/ # jquery/distディレクトリに生成される jquery.js jquery.min.js
makeコマンドでJSLintや圧縮がかかったものが生成されますが、make jqueryとすることでそれらをかけないで生成することもできます。
細かい事はjquery/jquery – GitHubに載っています。
お知らせ欄
JavaScript Primerの書籍版がAmazonで購入できます。
JavaScriptに関する最新情報は週一でJSer.infoを更新しています。
GitHub Sponsorsでの支援を募集しています。