Tomcatの構築
目次
はじめに
Apache Tomcatをソースから構築するのは非常に簡単で、Tomcatへの貢献の最初のステップとなります。完全で包括的な手順は、ファイルBUILDING.txtに記載されています。以下は、簡単なステップバイステップガイドです。
Java Development Kit (JDK) のダウンロード
Apache Tomcatを構築するには、JDK (バージョン22) 以降がインストールされている必要があります。https://adoptium.net/temurin/releasesまたは他のJDKベンダーからダウンロードできます。
重要: 環境変数JAVA_HOMEを、JDKリリースをインストールしたディレクトリのパス名に設定してください。
Apache Antのインストール
Ant 1.10.2以降のバイナリディストリビューションをこちらからダウンロードしてください。
バイナリディストリビューションを都合の良い場所に解凍し、Antリリースがそれ自身のディレクトリ (慣例としてapache-ant-[version]
という名前) に配置されるようにします。このガイドの残りの部分では、シンボル名${ant.home}
がAntインストールディレクトリの完全なパス名を参照するために使用されます。
重要: ${ant.home}
ディレクトリを指すANT_HOME環境変数を作成し、PATH環境変数に${ant.home}/bin
ディレクトリを追加してリストに含めてください。これにより、ビルドを実行するために使用されるant
コマンドラインスクリプトが利用可能になります。
Tomcatソースコードの入手
Tomcat GitリポジトリURL: https://github.com/apache/tomcat
Tomcatソースパッケージ: https://tomcat.dokyumento.jp/download-11.cgi。
Gitを使用してソースリポジトリをクローンし、リリースされたバージョンのタグまたは現在の開発コードのmainを選択するか、ソースパッケージをダウンロードして解凍します。このガイドの残りの部分では、シンボル名${tomcat.source}
がソースが配置された場所を参照するために使用されます。
ダウンロードエリアの設定
Tomcatの構築には、それに依存する多数のライブラリをダウンロードする必要があります。これらのライブラリのダウンロードエリアを設定することを強くお勧めします。
デフォルトでは、ビルドは依存関係を${user.home}/tomcat-build-libs
ディレクトリにダウンロードするように設定されています。これは変更可能ですが(下記参照)、絶対パスである必要があります。
ビルドは、${tomcat.source}/build.properties
ファイルを作成することによって制御されます。このファイルは、build.properties.default
およびbuild.xml
ファイルに存在するプロパティを再定義するために使用できます。build.properties
ファイルはデフォルトでは存在しません。作成する必要があります。
ダウンロードエリアはプロパティbase.path
で定義されます。例えば
# ----- Default Base Path for Dependent Packages -----
# Replace this path with the directory path where
# dependencies binaries should be downloaded.
base.path=/home/me/some-place-to-download-to
異なるバージョンのTomcatが同じダウンロードエリアを共有できます。
別の例
base.path=${user.dir}/../libraries-tomcat11.0
プロキシ経由でインターネットにアクセスするユーザーは、Antにプロキシ設定を指示するためにプロパティファイルを使用する必要があります
# ----- Proxy setup -----
proxy.host=proxy.domain
proxy.port=8080
proxy.use=on
Tomcatの構築
Tomcatを構築するには、以下のコマンドを使用してください
cd ${tomcat.source}
ant
ビルドが正常に完了すると、使用可能なTomcatインストールが${tomcat.source}/output/build
ディレクトリに生成され、通常のスクリプトで起動および停止できます。
Eclipseでの構築
重要: これはTomcatを構築するサポートされた方法ではありません。この情報は保証なしで提供されます :-)。Tomcatを構築する唯一のサポートされた方法は、上記で説明したAntビルドを使用することです。ただし、一部の開発者はJava IDEでJavaコードを操作することを好むため、以下の手順が一部の開発者によって使用されています。
注: これにより、Eclipseですべてをビルドできるわけではありません。ビルドプロセスでは、単純なJavaコンパイルではない多くの段階でAntを使用する必要があります。ただし、これによりJavaコードの表示と編集、警告の取得、コードの再フォーマット、リファクタリングの実行、IDEでのTomcatの実行などが可能になります。
警告: Antターゲットを実行する前に、上記で説明したように${tomcat.source}/build.properties
ファイルを作成し、設定することを忘れないでください。
サンプルのEclipseプロジェクトファイルと起動ターゲットは、ソースツリーのres/ide-support/eclipse
ディレクトリに提供されています。以下の指示により、これらは必要な場所に自動的にコピーされます。
すべてのバイナリ依存関係をダウンロードし、Eclipseプロジェクトとクラスパスファイルをソースツリーのルートに作成するためのAntターゲットが便宜上提供されています。
cd ${tomcat.source}
ant ide-eclipse
Eclipseを起動し、新しいワークスペースを作成します。
ファイル -> インポートを使用し、既存のプロジェクトをワークスペースへを選択します。そこからTomcatソースツリーのルートディレクトリ (${tomcat.source}
) を選択し、そこにあるTomcatプロジェクトをインポートします。
start-tomcat
およびstop-tomcat
起動設定はres/ide-support/eclipse
に提供されており、実行 -> 実行構成ダイアログで利用可能です。これらを使用してEclipseからTomcatを起動および停止します。これらを自分で設定したい場合(または異なるIDEを使用している場合)は、メインクラスとしてorg.apache.catalina.startup.Bootstrap
を使用し、プログラム引数としてstart
/stop
などを指定し、VM引数として-Dcatalina.home=...
(ビルドディレクトリの名前を指定)を指定してください。
いくつかの書式設定の環境設定を微調整することで、Tomcatのコーディング規約との一貫性を保ちやすくなり(そして貢献が受け入れられやすくなります)
Java -> コードスタイル -> フォーマッタ -> 編集... | タブポリシー: スペースのみ タブとインデントサイズ: 4 |
一般 -> エディター -> テキストエディター | 表示されるタブ幅: 2 タブをスペースに置き換える 空白文字を表示(任意) |
XML -> XMLファイル -> エディター | スペースを使用してインデント インデントサイズ: 2 |
Ant -> エディター -> フォーマッタ | タブサイズ: 2 スペースの代わりにタブ文字を使用: チェックを外す |
コンパイラ警告の推奨設定は、res/ide-support/eclipse/java-compiler-errors-warnings.txt
ファイルに記載されています。
その他のIDEでの構築
同じ一般的なアプローチはほとんどのIDEで機能するはずです。例えば、IntelliJ IDEAで動作することが報告されています。