ITエンジニアの成長ブログ

ITエンジニアとして行う勉強の発信&日々の生活で体験した楽しいことをゆるく発信

Tomcatを自分でビルドしてみた

TomcatApache Lincensの元に提供されているOSSの一つです。ソースコードが公開されており、自分でビルドすることができます。

興味があったので、実際に自分でビルドをやってみようと思います。ビルド対象のバージョンは「8.0.53」にしたいと思います。既にサポート対象外バージョンですのでご注意ください。

Tomcatでビルドするための手順

ビルドをするための手順は、以下の通りTomcatの公式に載っています。とても良心的ですね。今回はこちらの手順を参照しながら、ビルドを進めたいと思います。
Apache Tomcat 8 (8.0.53) - Building Tomcat

Javaをインストールする

TomcatJavaで作られているのでビルドもJavaコンパイラで行います。Tomcat8.0.53の場合は、JDK 7が必要です。今回は、Javaのインストールは割愛します。たくさんのディストリビューションから任意のものを選択して、インストールします。

私の環境では、すでにインストール済みの以下バージョンで進めます。

Javaのバージョン

また、Javaをインストールしたら環境変数JAVA_HOME」をインストールディレクトリに設定します。私の環境では以下の通りです。

環境変数JAVA_HOME」の確認

Apache Antをインストールする

次は、ビルドツールのApache Antをインストールします。TomcatはAntでビルドするのですね。初めて知りました。必要なバージョンは、Ant 1.9.8より新しいバージョンです。

インストール方法は、以前ブログ記事にまとめたことがあるので、こちらをご参照ください。
WindowsにApache Antをインストールする - ITエンジニアの成長ブログ

私の環境では、すでにインストール済みの以下バージョンで進めます。

Antのバージョン

インストールできたら、環境変数「ANT_HOME」をAntのインストールディレクトリに設定します。私の環境では以下の通りです。

環境変数「ANT_HOME」の確認

ソースをダウンロードする

それでは、ビルドするためのソースコードをダウンロードします。

以下の通り、ソースコードのダウンロード元はSVNもしくは、ソースをパッケージしてまとめたもの2つのどちらか選べるようです。

Tomcatソースコードのダウンロードの選択肢

しかし、現時点ではSVNのリンクは既に404エラーになってしまっていました。

SVNTomcatソースは404エラー

仕方がないので、もう一つのリンクからダウンロードしたいと思います。アクセスすると以下のページに遷移します。今回は、「8.0.53」をビルドしたいのですが、このページには「8.5.100」しかないので、[Quick Navigation] - [Archives]のリンクを辿りアーカイブからダウンロードします。

Tomcatダウンロードページ

リンク先の真ん中あたりに、「8.0.53」があるのでリンクを遷移します。

Tomcatのダウンロードページ2

以下の「src」リンクを遷移します。

Tomcatダウンロードページ3

以下の中から「apache-tomcat-8.0.53-src.zip」のリンクを押下します。すると、勝手にダウンロードが始まります。これでソースのダウンロードは完了です。

Tomcatダウンロードページ4

ビルド前の設定を行う

ビルドを実際に実行する前に少しビルドの設定が必要のようです。ここでは、ビルドの設定作業をしたいと思います。

まずは、先ほどダウンロードしたソースファイルを解凍します。

Tomcatのソース解凍後

すると、解凍後の直下に「build.properties.default」がありますので、これをファイルごとコピーして、「build.properties」と言う名前のファイルを新規作成します。

build.properties作成

そしたら、「build.properties」を開いて82行目の"base.path"を確認します。

build.properties

これはTomcatをビルドする際に必要な依存ライブラリをダウンロードするフォルダを指定する設定項目です。デフォルトでは、ユーザーのホームディレクトリの直下の「tomcat-build-libs」というフォルダになっています。

このままでも良いですが、私はユーザーフォルダ直下ではない場所にしたいので、以下の場所を指定しました。因みに指定するパスは絶対パスだそうです。

base.path編集

これでビルドの準備は完了です。

Tomcatのビルドを行う

それでは、準備が整いましたのでTomcatをビルドします。

と言っても、ビルドはとても簡単です。コマンドプロンプトを開き、先ほどダウンロードしたTomcatのソースディレクトリの直下にcdして「ant」を叩くだけです。

ant実行

すると、ビルドが始まりたくさんのログが出力されます。最後には以下の通り、ビルドが成功しました。キャプチャの通り、私の環境では1分16秒でビルドが完了しました。

antビルド完了

Tomcatのビルド成果物の確認を行う

前回までの手順でTomcatのビルドが完了しました。

それでは、実際にビルド成果物を確認しましょう。ビルドした成果物は、Tomcatのソースディレクトリ直下に「output」として出力されています。

そして、「output」の配下の「build」ディレクトリにはビルドされた結果の成果物として、起動スクリプトや設定ファイル等を含む一式が出力されています。

Tomcatのビルド成果物

それでは、動作確認もしてみましょう。「bin」ディレクトリで以下の通りコマンドを実行します。

Tomcatを起動する

Tomcatが起動したら、http://localhost:8080/でアクセスします。以下の通り表示されました!

Tomcatにアクセス

これでTomcatのビルドから、その成果物の動作確認まですべて行うことができました。

おわりに

いかがでしょうか。Tomcatのビルドを実際に自分の環境でやってみました。こういうオープンソースの大きなプロジェクトのビルドと聞くと、なんだか難しそうで自分では出来なさそうだなと思っていたのですが、案外簡単にできました。

自分でオープンソースプロジェクトのソースを修正したりする機会はあまりないかもしれませんが、個人的にはとても良い経験でした。今後は、Tomcatのソースリーディングなどにも挑戦したいなと思います。

今回はこの辺で。最後までお読みいただきありがとうございました。