Apache Ant のインストール

Apache Ant の入手

簡単な説明

Ant のバイナリディストリビューションを迅速に起動して実行するには、以下の手順に従ってください。

  1. Java 環境がインストールされていることを確認してください。詳細はシステム要件を参照してください。
  2. Ant をダウンロードします。詳細はバイナリディストリビューションを参照してください。
  3. ダウンロードしたファイルをディレクトリに解凍します。
  4. 環境変数を設定します。JAVA_HOME は Java 環境、ANT_HOME は Ant を解凍したディレクトリ、PATH には ${ANT_HOME}/bin (Unix) または %ANT_HOME%\bin (Windows) を追加します。詳細はセットアップを参照してください。
  5. オプションで、ANT_HOME ディレクトリから ant -f fetch.xml -Ddest=system を実行して、ライブラリを必要とするほとんどの Ant タスクの依存関係を取得します。これを行わないと、依存する多くの Ant タスクが使用できなくなります。詳細および -Ddest パラメータのその他のオプションについては、オプションタスクを参照してください。
  6. オプションで、必要な Ant ライブラリを追加します。リストについては、Ant ライブラリを参照してください。

上記のリストのリンクには、各ステップの詳細が記載されています。必要であれば参照してください。または、このドキュメントの残りの部分を読み進めてください。

Ant のソースコードを操作するための簡単な説明(バイナリディストリビューションを使用している場合は不要)は以下のとおりです。

  1. ソースコードを入手します。詳細はソースディストリビューションを参照してください。
  2. Ant をビルドします。詳細はAnt のビルドを参照してください。

完全な説明については、読み進めてください。

バイナリディストリビューション

Ant の最新の安定版は、Ant の Web ページ https://ant.dokyumento.jp/ から入手できます。

Ant のバイナリディストリビューションは、3 種類のアーカイブとして入手できます。

  1. .zip — Windows に推奨される圧縮形式で、他のプラットフォームでも使用できます。多くのプログラムや一部のオペレーティングシステムでネイティブにサポートされています。
  2. .tar.gz — tar プログラムを使用してファイルをまとめ、gzip で圧縮および解凍します。
  3. .tar.bz2 — tar プログラムを使用してファイルをまとめ、bzip2 で圧縮および解凍します。

お使いのプラットフォームで最もサポートされている形式を選択してください。

バイナリ RPM パッケージ

以下のjpackageセクションを参照してください。

IDE にバンドル

すべての主要な Java IDE (Eclipse、NetBeans、IntelliJ IDEA など) には Ant が同梱されています。この方法で Ant をインストールすると、通常、IDE がリリースされた時点での Ant の最新リリースを入手できます。一部の IDE (特に Eclipse および NetBeans) には、IDE 固有のツールが Ant のパスにある場合にのみ機能する追加タスクが同梱されています。これらのタスクをコマンドライン版の Ant で使用するには、関連する JAR を追加のライブラリ/タスクとしてコマンドラインの Ant に追加する必要があります。IDE タスクまたは拡張機能が動作しない場合、Ant チームはバグレポートに対応できないことに注意してください。まず IDE のメーリングリストを試してください。必要に応じてバグをクロスファイルします。

IDE は、常に異なる Ant インストールを指すことができます。これにより、開発者は Ant の新しいリリースにアップグレードしたり、コマンドラインと IDE の Ant の間の不整合を解消したりできます。

Java アプリケーションにバンドル

多くの Java アプリケーション、特にアプリケーションサーバーには、Ant のバージョンが同梱されています。これらは主にアプリケーション内部で使用され、Java API を使用して、JSP ページのコンパイルなどのタスクを Ant ランタイムに委任します。このようなディストリビューションは通常、誰にもサポートされていません。特に問題なのは、独自の Ant リリースが同梱されているだけでなく、独自の ANT.BAT または ant.shPATH に追加する製品です。何かをインストールした後に Ant の動作がおかしくなった場合は、診断のアドバイスを試してください。

ソースディストリビューション

ソースディストリビューションをご希望の場合は、https://ant.dokyumento.jp/srcdownload.cgi から Ant の最新リリースのソースをダウンロードできます。

最先端のコードをご希望の場合は、Git を介して開発中のコードにアクセスできます。Ant の Web サイトには、Git へのアクセスに関する詳細が記載されています。すべてのバグ修正はソースツリーの HEAD に対して行われ、多くのバグレポートに対する最初の回答は「最新バージョンを試しましたか」になります。新しい機能以外は通常安定しているため、プレリリースディストリビューションをダウンロードしてビルドすることを恐れないでください。

ソースコードから Ant をビルドする方法については、Ant のビルドセクションを参照してください。オンラインで Ant Git リポジトリにアクセスすることもできます。

アーカイブダウンロードエリアのレイアウト

古いバージョンの Ant は、https://archive.apache.org/dist/ant/ のアーカイブで入手できます。ファイルは次のように整理されています。

ファイル名またはパス 説明
KEYS PGP キーファイル。これには、Ant 開発者の PGP キーが含まれており、ディストリビューションを「信頼」することができます。
RELEASE-NOTES-{version}.html 特定のバージョンのリリースノート(HTML形式)。Ant のインストールをアップグレードする場合は、「以前の環境を壊す可能性のある変更」セクションを確認する必要があります。
ant-current-bin.zip 最後にリリースされたバージョンの Ant のコンパイル済みバージョンを含む ZIP アーカイブ。上記で説明した標準のダウンロード方法では、より近いミラーにリダイレクトされるため、ダウンロードが高速になり、Apache サーバーの負荷が軽減されるため、この方法で最新バージョンをダウンロードしないことをお勧めします。
ant-current-src.zip Ant のソースを含む ZIP アーカイブ。これを使用すると、Ant をコンパイルできます。必須の依存関係がない場合、依存するクラスはビルドされません。ここでも、ダウンロードを高速化し、Apache サーバーの負荷を軽減するために、上記で説明した標準の方法でソースパッケージを入手することをお勧めします。
ant-current-*.asc zip ファイルの正確性をチェックするためのセキュリティファイル。これは、PGP 署名です。
ant-current-*.md5 zip ファイルの正確性をチェックするためのセキュリティファイル。これは、MD5 チェックサムです。
ant-current-*.sha1 zip ファイルの正確性をチェックするためのセキュリティファイル。これは、SHA1 チェックサムです。
ant-current-*.sha512 zip ファイルの正確性をチェックするためのセキュリティファイル。これは、SHA512 チェックサムです。
antlibs/ このディレクトリには、Apache Ant プロジェクトで作成された Ant ライブラリが格納されています。Ant ライブラリは、Ant コアの一部として配信されないが、オプションのダウンロードとして入手できる Ant タスクのバンドルです。
binaries/ binaries ディレクトリには、ZIP および tar.gz アーカイブ形式でバンドルされた特定の Ant リリースが格納されています。名前付きリリースは、親ディレクトリにある ant-current-bin.zip ファイルとは対照的に、常に Ant の最新リリースであることが保証されています。
common/ common ディレクトリには、Ant がライセンスされている Apache License ファイルなど、Ant ディストリビューション全体をダウンロードしなくても確認できるさまざまなファイルが格納されています。
source/ source ディレクトリには、ZIP および tar.gz アーカイブ形式でバンドルされた特定の Ant リリースのソースコードが格納されています。名前付きリリースは、親ディレクトリにある ant-current-src.zip ファイルとは対照的に、常に Ant の最新リリースのソースコードを保持することが保証されています。

システム要件

Ant は、Linux、Solaris や HP-UX などの商用 Unix、macOS、Windows NT の後継、OS/2 Warp、Novell Netware 6、OpenVMS など、多くのプラットフォームで正常に使用されています。開発に最も使用されるプラットフォームは、順不同で、Linux、macOS、Microsoft Windows、および Unix です。したがって、これらは最も正常に動作する傾向があるプラットフォームです。Ant 1.7 以降、Windows 9x はサポートされなくなりました。

現在のバージョンの Ant (1.10) では、システムに JDK バージョン 8 以降がインストールされている必要もあります。Java のバージョンが最新であるほど、取得できる Ant タスクが多くなります。

: JDK が存在せず、ランタイム (JRE) のみが存在する場合、多くのタスクが機能しません。

: Ant 1.10.* は JDK 8 以降で動作し、Ant 1.9.* は JDK 1.5 以降で動作し、Ant 1.8.* は JDK 1.4 以降で動作し、Ant 1.7.* は JDK 1.3 以降で動作し、Ant 1.6.* は JDK 1.2 以降で動作し、Ant 1.2 から Ant 1.5.* は JDK 1.1 以降で動作します。

オープンソース Java ランタイム

Ant チームは、OpenJDK およびその他のオープンソース Java ランタイムで Ant を実行するユーザーを強くサポートしており、これらのプラットフォームで正常に動作する製品を作成するよう努めています。


Ant のインストール

Ant のバイナリディストリビューションは、次のディレクトリレイアウトで構成されています。

  ant
   +--- README, LICENSE, fetch.xml, other text files. //basic information
   +--- bin  // contains launcher scripts
   |
   +--- lib  // contains Ant JARs plus necessary dependencies
   |
   +--- manual  // Ant documentation (a must read ;-)
   |
   +--- etc // contains xsl goodies to:
            //   - create an enhanced report from xml output of various tasks.
            //   - migrate your build files and get rid of 'deprecated' warning
            //   - ... and more ;-)

Ant を実行するために必要なのは、bin および lib ディレクトリのみです。

Ant をインストールするには、ディレクトリを選択し、そこにディストリビューションファイルをコピーします。このディレクトリは ANT_HOME として知られています。

Windows 95、Windows 98 および Windows ME の注意事項

現在のリリースの Ant では、これらのシステムはサポートされなくなったことに注意してください。ただし、古いバージョンの Ant を使用している場合、Ant の起動に使用されるスクリプトは、ANT_HOME が長いファイル名(つまり、「8.3」として知られる形式ではないファイル名)の場合、問題が発生します。これは、OS のバッチファイルの "for" ステートメントの処理における制限が原因です。したがって、Ant は C:\Ant などの短い 8.3 パスにインストールすることをお勧めします。

これらのシステムでは、Ant 起動スクリプトで使用される環境変数を処理するために、より多くの環境スペースを構成する必要があります。これを行うには、config.sys ファイルに次の行を追加または更新する必要があります。

shell=c:\command.com c:\ /p /e:32768

セットアップ

Ant を実行する前に、jpackage.org からの RPM バージョンをインストールしていない限り、追加のセットアップを行う必要があります。

コマンドラインからこれを行うためのオペレーティングシステム固有の手順については、WindowsLinux/Unix (bash)、およびLinux/Unix (csh) セクションを参照してください。この方法を使用すると、設定は実行したコマンドラインセッションでのみ有効になることに注意してください。

: Ant の ant.jar ファイルを JDK/JRE の lib/ext ディレクトリにインストールしないでください。Ant はアプリケーションであり、拡張ディレクトリは JDK 拡張を対象としています。特に、拡張機能によってロードされる可能性のあるクラスにはセキュリティ制限があります。

Windows の注意事項

ant.bat スクリプトは、3 つの環境変数 (ANT_HOMECLASSPATH、および JAVA_HOME) を使用します。ANT_HOME 変数と JAVA_HOME 変数が設定されており、引用符 (' または ") が含まれておらず、\ または / で終わっていないことを確認してください。CLASSPATH は設定されていないか空である必要があります。

インストールの確認

新しいシェルを開いて ant と入力すると、基本的なインストールを確認できます。次のようなメッセージが表示されます。

Buildfile: build.xml does not exist!
Build failed

Ant は動作します。このメッセージは、プロジェクトのビルドファイルを作成する必要があるために表示されます。ant -version を使用すると、次のような出力が得られます。

Apache Ant(TM) version 1.9.2 compiled on July 8 2013

これが機能しない場合は、環境変数が正しく設定されていることを確認してください。たとえば、Windows の場合、それらは次のように解決される必要があります。

ANT_HOME は、ライブラリを見つけるためのランチャースクリプトで使用されます。JAVA_HOME は、使用する JDK/JRE を見つけるためにランチャーで使用されます。(一部のタスクには Java ツールが必要なため、JDK を推奨します。)設定されていない場合、ランチャーは %PATH% 環境変数を使用して見つけようとします。PATH はユーザーの利便性のために設定されます。これを設定すると、the/complete/path/to/your/ant/installation/bin/ant のように常に完全なパスを入力する代わりに、ant を起動するだけで済みます。

オプションタスク

Ant は多数のオプションタスクをサポートしています。オプションタスクとは、通常、機能するために外部ライブラリを必要とするタスクです。オプションタスクは、コア Ant タスクと一緒にパッケージ化されています。

各オプションタスクに必要な外部ライブラリの詳細は、ライブラリの依存関係セクションで詳しく説明されています。これらの外部ライブラリは、次のいずれかの方法で Ant のクラスパスに追加する必要があります。

Ant のバイナリ配布を使用している場合、またはソースコードから作業している場合は、ほとんどの依存関係を簡単に収集し、Ant タスクで使用できるようにインストールできます。ANT_HOME ディレクトリには、fetch.xml というファイルがあるはずです。これは、オプションの Ant タスクに必要なほとんどすべての依存関係をインストールするために実行できる Ant スクリプトです。

これを行うには、ANT_HOME ディレクトリに移動し、次のコマンドを実行します。

ant -f fetch.xml -Ddest=[option]

ここで、option は上記のように次のいずれかです。

プロキシ設定も必要になる場合があります。詳細については、プロキシ設定セクションを参照してください。

fetch.xml を使用してすべての依存関係が収集されるわけではないことに注意してください。特に商用ソフトウェアに依存するタスクでは、使用するために商用ソフトウェアがインストールされている必要があります。

Apache Ant プロジェクトは、別途ダウンロードできる Ant ライブラリとして利用できる追加のタスクと型も提供しています。Ant ライブラリページで利用可能な Ant ライブラリのリストを確認できます。

外部ツールとタスクページでは、サードパーティプロジェクトが提供するタスクと型も見つけることができます。

IDE では、外部 JAR ファイルとサードパーティタスクを Ant に追加する方法が異なります。通常、何らかの設定ダイアログによって行われます。プロジェクトに追加された JAR ファイルが自動的に Ant のクラスパスに追加されることもあります。

CLASSPATH 環境変数

CLASSPATH 環境変数は、Ant のサポートに関する問い合わせの多くを占める原因です。Ant ユーザーメーリングリストでの診断の往復には時間がかかる可能性があり、「ant.bat」が動作しないというバグレポートは開発者によって WORKSFORME (「これはバグではなく設定の問題です」) として却下されるため、いくつかの簡単な手順に従うことで多くの時間とフラストレーションを回避できます。

  1. CLASSPATH を設定しないでください。Ant は必要とせず、混乱を引き起こし、問題を発生させるだけです。
  2. 前のルールを無視する場合は、ディレクトリにスペースがある場合でも、CLASSPATH に引用符を絶対に入れないでください。これにより Ant が壊れ、必要ありません。
  3. 最初のルールを無視する場合は、CLASSPATH に末尾のバックスラッシュを絶対に入れないでください。Ant が文字列を引用符で囲むことができなくなるためです。DOS ディレクトリをパスに追加する場合でも、これは CLASSPATH 環境変数の正しい動作には必要ありません。
  4. コマンドラインで -noclasspath オプションを設定すると、Ant が CLASSPATH 環境変数を使用するのを停止できます。これは、クラスパス関連の問題をテストする簡単な方法です。

CLASSPATH 問題の通常の症状は、Ant が org.apache.tools.ant.launch.Launcher を見つけることができないというエラーで実行されないか、引用符/バックスラッシュを間違えた場合は、非常に奇妙な Java 起動エラーが発生することです。これが当てはまるかどうかを確認するには、ant -noclasspath を実行するか、CLASSPATH 環境変数を設定解除してください。

スクリプトの先頭(または init ターゲット)に次を配置するだけで、Ant スクリプトがこの環境変数を拒否するようにすることもできます。

<property environment="env."/>
<property name="env.CLASSPATH" value=""/>
<fail message="Unset $CLASSPATH / %CLASSPATH% before running Ant!">
    <condition>
        <not>
            <equals arg1="${env.CLASSPATH}" arg2=""/>
        </not>
    </condition>
</fail>

プロキシ構成

多くの Ant 組み込みタスクおよびサードパーティタスクは、ネットワーク接続を使用して HTTP サーバーからファイルを取得します。プロキシサーバーを持つファイアウォールの背後にある場合、Ant はプロキシで構成する必要があります。次に、これを行うさまざまな方法を示します。

Ant チームは、これが不十分であることを認識しています。JVM 自動プロキシ設定がどこでも適切に動作するようになるまで、ANT_ARGS による明示的な JVM オプションが最良の解決策であると考えられます。Ant のコマンドラインでプロパティを設定しても、JVM オプションではなくAnt プロパティが設定されるため、機能しません。つまり、次のようにしてもコマンドラインは設定されません。

ant -Dhttp.proxyHost=proxy -Dhttp.proxyPort=81

これは、2 つの Ant プロパティを設定するだけです。

プロキシのもう 1 つのトラブル箇所は、認証プロキシです。Ant はここで JVM が行うことを超えることはできず、プロキシ関連の問題をリモートで診断、テスト、修正することは非常に難しいため、セキュアプロキシの背後で作業するユーザーは、満足できるまで JVM プロパティの設定に多くの時間を費やす必要があります。

Windows および OS/2

Ant が c:\ant\ にインストールされていると仮定します。次のように環境を設定します。

set ANT_HOME=c:\ant
set JAVA_HOME=c:\jdk11.0.8_10
set PATH=%PATH%;%ANT_HOME%\bin

Linux/Unix (bash)

Ant が /usr/local/ant にインストールされていると仮定します。次のように環境を設定します。

export ANT_HOME=/usr/local/ant
export JAVA_HOME=/usr/local/jdk-11.0.8+10
export PATH=${PATH}:${ANT_HOME}/bin

Linux/Unix (csh)

setenv ANT_HOME /usr/local/ant
setenv JAVA_HOME=/usr/local/jdk-11.0.8+10
set path=( $path $ANT_HOME/bin )

JVM/JDK バージョンを指すようにシンボリックリンクを設定すると、更新がよりシームレスになります。

jpackage.org からの RPM バージョン

JPackage プロジェクトは、Ant の RPM バージョンを配布しています。このバージョンでは、JAVA_HOME または ANT_HOME 環境変数を設定する必要はなく、RPM インストーラーは ant 実行可能ファイルをパスに正しく配置します。

: Ant 1.7.0 以降ANT_HOME 環境変数が設定されている場合、JPackage ディストリビューションは無視されます。

JPackage バージョンのオプション JAR は、2 つの方法で処理されます。最も簡単で最適な方法は、JPackage が利用可能な場合は、JPackage からこれらの外部ライブラリを取得することです。(注: このような各ライブラリについては、外部パッケージ自体 (例: oro-2.0.8-2jpp.noarch.rpm) と、Ant と外部パッケージをリンクする小さなライブラリ (例: ant-apache-oro-1.6.2-3jpp.noarch.rpm) の両方を取得する必要があります。)

ただし、JPackage はプロプライエタリソフトウェアをパッケージ化しないため、一部のオプションパッケージはプロプライエタリ JAR に依存しているため、次のように処理する必要があります。これは JPackage の精神に違反する可能性がありますが、これらのプロプライエタリパッケージが必要な場合は必要です。たとえば、JPackage がサポートしていない NetRexx のサポートをインストールするとします。

  1. 追加の JAR をデプロイする場所を決定します。1 つのオプションは $ANT_HOME/lib です。これは、JPackage の場合は通常 /usr/share/ant/lib です。もう 1 つ、あまり煩雑でないオプションは、ホームディレクトリの .ant/lib サブディレクトリを作成し、そこに JPackage 以外の Ant JAR を配置して、JPackage ライブラリを同じフォルダー内の JPackage 以外のものと混同しないようにすることです。Ant がライブラリを見つける場所に関する詳細については、こちらを参照してください。
  2. 正規の Apache Ant サイトから JPackage 以外のバイナリ配布をダウンロードします。
  3. 配布を一時ディレクトリに展開または解凍します。
  4. この場合、リンクする JAR である ant-jai.jar を、上記の手順 1 で選択したライブラリディレクトリにコピーします。
  5. プロプライエタリ JAR 自体を同じディレクトリにコピーします。
最後に、何らかの理由でJPackage版とApache版のAntの両方が利用可能なシステムで実行している場合、Apache版を実行したい場合は(パス上に見つからない絶対ファイル名で指定する必要がある)、Antの--noconfigコマンドラインスイッチを使用して、JPackageのクラスパスメカニズムを回避する必要があります。

詳細設定

Antを実行する方法はたくさんあります。少なくとも以下のものが必要です。

Antに付属のシェルスクリプトはすべて、Antに追加のオプションを渡すために使用できるANT_OPTS環境変数をサポートしています。一部のスクリプトは、ユーザーのホームディレクトリに保存された追加のスクリプトも読み込みます。これは、そのようなオプションを設定するために使用できます。詳細については、プラットフォームの起動スクリプトのソースを参照してください。

Antのビルド

ソースからAntをビルドするには、Antのソース配布をインストールするか、GitからAntのリポジトリをクローンすることができます。詳細については、ソース配布を参照してください。

ソースをインストールしたら、インストールディレクトリに移動します。

JAVA_HOME環境変数をJDKがインストールされているディレクトリに設定します。オペレーティングシステムでの設定例については、Antのインストールを参照してください。

注意: Antのブートストラッププロセスには、OpenJDKやOracleのjavacのような欲張りなコンパイラが必要です。gcjkjcでは動作しません。

関心のあるタスクをビルドするために必要な補助JARをすべてダウンロードしていることを確認してください。これらはソースツリーのlib/optionalディレクトリに追加する必要があります。さまざまな機能に必要なJARの一覧については、ライブラリの依存関係を参照してください。これにより、補助JARはAntのビルドのみで利用可能になることに注意してください。Antを実行するには、Antのインストールで説明されているように、JARを利用可能にする必要があります。

fetch.xmlビルドファイルでAntを実行することで、ほとんどの補助JARファイル(つまり、さまざまなオプションのAntタスクが依存するJARファイル)を取得することもできます。これを行う方法については、オプションタスクを参照してください。

Ant 1.7.0以降、AntはJUnitにハード依存しています。fetch.xmlビルドスクリプトはJUnitを自動的にダウンロードしますが、これを使用しない場合は、Antのソース配布を使用している場合は、lib/optionalに手動でインストールする必要があります(JUnit.orgからダウンロードしてください)。

これでAntをビルドする準備が整いました。

次のコマンドでdist.dirに渡すディレクトリパスが、空のディレクトリを指していることを強く推奨します。

build -Ddist.dir=<Antディストリビューションを格納するディレクトリ> dist    (Windows)

sh build.sh -Ddist.dir=<Antディストリビューションを格納するディレクトリ> dist    (Unix)

これにより、指定したディレクトリにAntのバイナリディストリビューションが作成されます。

上記のアクションは次のことを行います。

ほとんどの場合、ビルドスクリプトが自動的に行うため、明示的にAntをブートストラップする必要はありません。ただし、使用しているビルドファイルが、ブートストラップされたAntにまだコンパイルされていない機能を使用している場合は、手動でブートストラップする必要があります。bootstrap.bat(Windows)またはbootstrap.sh(UNIX)を実行して、Antの新しいブートストラップバージョンをビルドします。

ビルドを現在のANT_HOMEディレクトリにインストールする場合は、以下を使用できます。

build install    (Windows)

sh build.sh install    (Unix)

必要に応じて、時間のかかるJavadocステップを回避できます。

build install-lite    (Windows)

sh build.sh install-lite    (Unix)

これにより、binおよびlibディレクトリのみがインストールされます。

installinstall-liteの両方のターゲットは、ANT_HOMEにある現在のAntバージョンを上書きします。

Antのビルドスクリプトは、Unix(のような)システムでシェルスクリプトの実行可能フラグを設定しようとします。chmodタスクが失敗する理由はいくつかあります(たとえば、最初にAntをインストールしたユーザーとは異なるユーザーとしてビルドスクリプトを実行している場合など)。この場合、ビルドの開始時にAntプロパティchmod.failをfalseに設定できます。

sh build.sh install -Dchmod.fail=false

これにより、権限を変更する際のエラーがビルドの失敗につながることはありません。


ライブラリの依存関係

以下のライブラリは、示された機能を使用している場合に、Antのクラスパスに必要です。マッパーで使用するには、正規表現ライブラリの1つのみが必要であることに注意してください(Javaには、Antが自動的に見つける正規表現実装が含まれています)。これらのタスクを利用可能にするには、タスク定義を含む特定のAntオプションJARもインストールする必要があります。上記のAntのインストール/オプションタスクのセクションを参照してください。

JAR名 必要な機能 入手先
jakarta-regexp-1.4.jar マッパー付きのregexpタイプ(java.util.regexを使用したくない場合) https://attic.apache.org/projects/jakarta-regexp.html
jakarta-oro-2.0.8.jar マッパー付きのregexpタイプ(java.util.regexを使用したくない場合)または、commons-net 1.4.1を使用したftpタスク https://attic.apache.org/projects/jakarta-oro.html
junit.jar junitタスク(Antのクラスパスではなく、タスクに渡されるクラスパスにある場合があります) https://junit.dokyumento.jp/
xalan.jar junitreportタスク https://xml.apache.org/xalan-j/
antlr.jar antlrタスク https://www.antlr.org/
bsf.jar scriptタスク
注意: Ant 1.6以降では、Apache BSF 2.3.0以降が必要です。
注意: Rhino JavaScriptの1.5R4以降のバージョンを使用するには、BSF 2.4.0が必要です。
注意: BSF 2.4.0はCommons Loggingを使用するため、commons-logging.jarが必要です。
https://commons.apache.org/bsf/
Groovy JAR バインディング付きのGroovy Antタスク、またはscriptおよびscriptdefタスク付きのGroovy http://groovy-lang.org/
バインディング付きのGroovy Antタスクの場合はgroovy-antを使用するか、scriptおよびscriptdefタスク付きのGroovyの場合はgroovy-bsfを使用します(またはgroovy-all)。
netrexx.jar netrexxcタスク、scriptタスク付きのRexx https://www.ibm.com/software/awdtools/netrexx/library.html
rhino.jar
(Java 7ランタイムに含まれ、Java 8以降ではNashornに置き換えられ、Java 15で削除されました)
scriptタスク付きのJavaScript
注意: Apache BSF 2.4.0は、Rhino 1.5R4以降のバージョンでのみ動作します。
https://www.mozilla.org/rhino/
graalvm js.jarおよびjs-scriptengine.jar
Java 15以降のscriptタスク付きのJavaScript
Java 15ではNashornが削除され、GraalVM JavaScriptがJavaクラスライブラリの外で代替となる予定です。
注意 GraalVM JavaScriptはNashornの完全な代替品ではありません。詳細については、scriptタスクのドキュメントを参照してください。また、GraakVM JavaScriptには、特にGraalVM regex、truffle、GraalVM SDK、およびICUなどの、さらにいくつかの依存関係が必要です。
jython.jar scriptタスク付きのPython https://www.jython.org/
jacl.jarおよびtcljava.jar scriptタスク付きのTCL http://tcljava.sourceforge.net/
jtcl.jar scriptタスク付きのTCL https://jtcl-project.github.io/jtcl/
BeanShell JAR scriptタスク付きのBeanShell。
注意: AntにはBeanShellバージョン1.3以降が必要です。
http://www.beanshell.org/
jruby.jar scriptタスク付きのRuby https://jruby.org/
judo.jar scriptタスク付きのJudo言語 以前はhttp://www.judoscript.org/にありましたが、現在は利用できません。
commons-logging.jar CommonsLoggingListener https://commons.apache.org/logging/
log4j.jar Log4jListener https://logging.apache.org/log4j/
commons-net.jar ftprexecおよびtelnetタスク
Antをコンパイルするには、commons-netの最小バージョン1.4.0が必要です。以前のバージョンでは、構成オプションのすべてをサポートしていませんでした。
実行時には、jakarta-oro 2.0.8がcommons-net 1.4.xとともに必要です。
注意: パフォーマンスの問題のため、commons-net 3.2を使用しないでください。
https://commons.apache.org/net/
bcel.jar classfilesetデータ型、ClassConstantsフィルタリーダーで使用されるJavaClassHelper、および依存関係の判断のためにejbjarタスクでオプションで使用されます。 https://commons.apache.org/bcel/
jakarta.mail.jar mailタスクおよび非推奨mimemailタスク https://eclipse-ee4j.github.io/mail/
activation.jar
  • Java 6からJava 10に含まれていますが、java.activationモジュールは非推奨となり、Java 9で削除対象としてマークされ、Java 10で明示的に有効にする必要があります。
  • Java 11以降、java.activationモジュールは削除されており、jarはクラスパスで明示的に利用可能にする必要があります。
MIMEエンコードを使用したmailタスク、および非推奨mimemailタスク https://github.com/eclipse-ee4j/jaf
jdepend.jar jdependタスク https://github.com/clarkware/jdepend
resolver.jar 1.1以降 外部カタログファイルのサポートが必要な場合のみxmlcatalogデータ型 https://xerces.apache.org/xml-commons/components/resolver/
jsch.jar 0.1.55以降 sshexecおよびscpタスク http://www.jcraft.com/jsch/
JAI—Java Advanced Imaging imageタスク https://download.java.net/media/jai/builds/release/1_1_3/INSTALL.html
jai-imageio-core.jar imageioタスク (Java 8でのTIFFサポート、およびPCX、PNM、RAWサポート) https://github.com/jai-imageio/jai-imageio-core/releases
XZ—Java 1.6以降用のXZ xzおよびunxzタスク、xzresourcetar/untarタスクでのxz圧縮 https://www.tukaani.org/xz/java.html
JUnit 5 Platform JAR
  • junit-platform-commons.jar
  • junit-platform-engine.jar
  • junit-platform-launcher.jar
junitlauncherタスク。選択されたテストエンジンによっては追加のライブラリが必要になる場合があります。詳細については、そのタスクのドキュメントを参照してください。 https://junit.dokyumento.jp/junit5/

トラブルシューティング

診断

Antには組み込みの診断機能があります。ant -diagnosticsを実行すると、Antは内部状態を確認し、出力します。このコードは、以下の内容を確認して出力します。

ant -diagnosticsを実行することは、Antが正しくインストールされているかを確認するための良い方法です。また、問題の自己診断を行うための最初のステップでもあります。ユーザーメーリングリストに報告される構成の問題は、おそらく誰かがこのコマンドを実行して結果を表示するように求めることになるでしょう。したがって、自分で使用することで時間を節約できます。

IDE内から診断を実行する場合は、diagnosticsタスクを使用して、Antオプションと同じテストを実行します。これをビルドファイルの診断ターゲットに追加することで、IDEで利用可能なタスク、XMLパーサーとクラスパスなどを確認できます。

ユーザーメーリングリスト

Antのインストールや動作に問題がある場合は、Antユーザーメーリングリストが問題を解決するための最良の場所です。まず宿題を済ませて、それがCLASSPATHの問題ではないことを確認し、診断チェックを実行して、Antが自身の状態をどう考えているかを確認してください。なぜ開発者リストではなく、ユーザーリストなのか?それは、開発者よりもユーザーの方が多く、より多くの人があなたを助けることができるからです。

Antに対するバグレポートは、構成に関する本当に修正可能なバグ(特定のプラットフォーム、特定のJVMバージョンで動作しないなど)がAntに存在する場合、またはユーザーメーリングリストからそうするように勧められた場合にのみ、構成/起動の問題に対して提出してください。