Ant のバイナリディストリビューションを迅速に起動して実行するには、以下の手順に従ってください。
JAVA_HOME
は Java 環境、ANT_HOME
は Ant を解凍したディレクトリ、PATH
には ${ANT_HOME}/bin (Unix) または %ANT_HOME%\bin (Windows) を追加します。詳細はセットアップを参照してください。ANT_HOME
ディレクトリから ant -f fetch.xml -Ddest=system を実行して、ライブラリを必要とするほとんどの Ant タスクの依存関係を取得します。これを行わないと、依存する多くの Ant タスクが使用できなくなります。詳細および -Ddest パラメータのその他のオプションについては、オプションタスクを参照してください。上記のリストのリンクには、各ステップの詳細が記載されています。必要であれば参照してください。または、このドキュメントの残りの部分を読み進めてください。
Ant のソースコードを操作するための簡単な説明(バイナリディストリビューションを使用している場合は不要)は以下のとおりです。
完全な説明については、読み進めてください。
Ant の最新の安定版は、Ant の Web ページ https://ant.dokyumento.jp/ から入手できます。
Ant のバイナリディストリビューションは、3 種類のアーカイブとして入手できます。
お使いのプラットフォームで最もサポートされている形式を選択してください。
以下のjpackageセクションを参照してください。
すべての主要な 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 アプリケーション、特にアプリケーションサーバーには、Ant のバージョンが同梱されています。これらは主にアプリケーション内部で使用され、Java API を使用して、JSP ページのコンパイルなどのタスクを Ant ランタイムに委任します。このようなディストリビューションは通常、誰にもサポートされていません。特に問題なのは、独自の Ant リリースが同梱されているだけでなく、独自の ANT.BAT または ant.sh を PATH
に追加する製品です。何かをインストールした後に 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 以降で動作します。
Ant チームは、OpenJDK およびその他のオープンソース Java ランタイムで 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
として知られています。
現在のリリースの 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 バージョンをインストールしていない限り、追加のセットアップを行う必要があります。
ANT_HOME
環境変数を、Ant をインストールしたディレクトリに設定します。一部のオペレーティングシステムでは、Ant の起動スクリプトが ANT_HOME
を推測できます (Unix 方言および Windows NT の後継) が、この動作に依存しない方がよいでしょう。JAVA_HOME
環境変数を設定します (以下の詳細セクションを参照)。これは、JDK がインストールされているディレクトリに設定する必要があります。コマンドラインからこれを行うためのオペレーティングシステム固有の手順については、Windows、Linux/Unix (bash)、およびLinux/Unix (csh) セクションを参照してください。この方法を使用すると、設定は実行したコマンドラインセッションでのみ有効になることに注意してください。
注: Ant の ant.jar ファイルを JDK/JRE の lib/ext ディレクトリにインストールしないでください。Ant はアプリケーションであり、拡張ディレクトリは JDK 拡張を対象としています。特に、拡張機能によってロードされる可能性のあるクラスにはセキュリティ制限があります。
ant.bat スクリプトは、3 つの環境変数 (ANT_HOME
、CLASSPATH
、および 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%\bin\ant.bat
%JAVA_HOME%\bin\java.exe
%PATH%=...他のエントリが含まれる可能性あり...;%ANT_HOME%\bin;...他のエントリが含まれる可能性あり...
ANT_HOME
は、ライブラリを見つけるためのランチャースクリプトで使用されます。JAVA_HOME
は、使用する JDK/JRE を見つけるためにランチャーで使用されます。(一部のタスクには Java ツールが必要なため、JDK を推奨します。)設定されていない場合、ランチャーは %PATH%
環境変数を使用して見つけようとします。PATH
はユーザーの利便性のために設定されます。これを設定すると、the/complete/path/to/your/ant/installation/bin/ant のように常に完全なパスを入力する代わりに、ant を起動するだけで済みます。
Ant は多数のオプションタスクをサポートしています。オプションタスクとは、通常、機能するために外部ライブラリを必要とするタスクです。オプションタスクは、コア Ant タスクと一緒にパッケージ化されています。
各オプションタスクに必要な外部ライブラリの詳細は、ライブラリの依存関係セクションで詳しく説明されています。これらの外部ライブラリは、次のいずれかの方法で Ant のクラスパスに追加する必要があります。
ANT_HOME/lib
内。これにより、JAR ファイルはすべての Ant ユーザーおよびビルドで利用できるようになります。
${user.home}/.ant/lib
内 (Ant 1.6 以降)。これにより、異なるユーザーが Ant に新しいライブラリを追加できるようになります。このディレクトリに追加されたすべての JAR ファイルは、コマンドライン Ant で利用できます。
-lib パラメータを指定したコマンドライン上。これにより、ケースバイケースで新しい JAR ファイルを追加できます。
CLASSPATH
環境変数内。これは避けてください。JAR ファイルがすべての Java アプリケーションに可視になり、サポートの問い合わせが絶えなくなる原因になります。詳細については、下記を参照してください。
タスク自体で受け入れられる一部の <classpath>
内。Ant 1.7.0 以降、Ant 自身のクラスパスに junit.jar がなくても、タスクの実行時に渡されたクラスパス (プログラムとテストと一緒に) に含まれていれば、<junit>
タスクを実行できます。
可能な限り、このオプションを優先することが推奨されます。Ant スクリプト自体が、ライブラリをロードする最適なパスを決定できるからです。ベースディレクトリからの相対パス(プロジェクトと一緒にライブラリをバージョン管理している場合)、Ant プロパティ、環境変数、Ivy ダウンロードなど、好きな方法でロードできます。
Ant のバイナリ配布を使用している場合、またはソースコードから作業している場合は、ほとんどの依存関係を簡単に収集し、Ant タスクで使用できるようにインストールできます。ANT_HOME
ディレクトリには、fetch.xml というファイルがあるはずです。これは、オプションの Ant タスクに必要なほとんどすべての依存関係をインストールするために実行できる Ant スクリプトです。
これを行うには、ANT_HOME
ディレクトリに移動し、次のコマンドを実行します。
ant -f fetch.xml -Ddest=[option]
ここで、option は上記のように次のいずれかです。
system
— Ant の lib ディレクトリに格納します (推奨)user
— ユーザーのホームディレクトリに格納しますoptional
— Ant のソースコード lib/optional ディレクトリに格納します。Ant のソースコードをビルドするときに使用しますプロキシ設定も必要になる場合があります。詳細については、プロキシ設定セクションを参照してください。
fetch.xml を使用してすべての依存関係が収集されるわけではないことに注意してください。特に商用ソフトウェアに依存するタスクでは、使用するために商用ソフトウェアがインストールされている必要があります。
Apache Ant プロジェクトは、別途ダウンロードできる Ant ライブラリとして利用できる追加のタスクと型も提供しています。Ant ライブラリページで利用可能な Ant ライブラリのリストを確認できます。
外部ツールとタスクページでは、サードパーティプロジェクトが提供するタスクと型も見つけることができます。
IDE では、外部 JAR ファイルとサードパーティタスクを Ant に追加する方法が異なります。通常、何らかの設定ダイアログによって行われます。プロジェクトに追加された JAR ファイルが自動的に Ant のクラスパスに追加されることもあります。
CLASSPATH
環境変数CLASSPATH
環境変数は、Ant のサポートに関する問い合わせの多くを占める原因です。Ant ユーザーメーリングリストでの診断の往復には時間がかかる可能性があり、「ant.bat」が動作しないというバグレポートは開発者によって WORKSFORME (「これはバグではなく設定の問題です」) として却下されるため、いくつかの簡単な手順に従うことで多くの時間とフラストレーションを回避できます。
CLASSPATH
を設定しないでください。Ant は必要とせず、混乱を引き起こし、問題を発生させるだけです。CLASSPATH
に引用符を絶対に入れないでください。これにより Ant が壊れ、必要ありません。CLASSPATH
に末尾のバックスラッシュを絶対に入れないでください。Ant が文字列を引用符で囲むことができなくなるためです。DOS ディレクトリをパスに追加する場合でも、これは CLASSPATH
環境変数の正しい動作には必要ありません。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 はプロキシで構成する必要があります。次に、これを行うさまざまな方法を示します。
Java 5 以上で Ant を実行する場合は、-autoproxy で自動プロキシ設定メカニズムを使用してみてください。
これらは、Java のネットワークプロパティに記載されており、JVM 全体のプロキシ動作を制御します。Ant で設定するには、ANT_OPTS
環境変数で宣言します。これは、モバイルシステム以外には最適なオプションです。ラップトップの場合は、ローミング時にこれらの設定を変更する必要があります。ANT_OPTS
を設定するには
csh/tcsh の場合
setenv ANT_OPTS "-Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080"bash の場合
export ANT_OPTS="-Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080"Windows の場合は、適切なダイアログボックスで環境変数を設定し、新しいコンソールを開くか、手動で
set ANT_OPTS = -Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080
常にファイアウォールの背後で使用されるビルドファイルを作成している場合は、setproxy タスクを使用してプロキシを構成できます (これは JVM プロパティを設定することで行われます)。これを行う場合は、プロキシホスト、ポートなどを定義するために Ant プロパティを使用することを強くお勧めします。これにより、個人がデフォルトをオーバーライドできます。
Ant チームは、これが不十分であることを認識しています。JVM 自動プロキシ設定がどこでも適切に動作するようになるまで、ANT_ARGS
による明示的な JVM オプションが最良の解決策であると考えられます。Ant のコマンドラインでプロパティを設定しても、JVM オプションではなくAnt プロパティが設定されるため、機能しません。つまり、次のようにしてもコマンドラインは設定されません。
ant -Dhttp.proxyHost=proxy -Dhttp.proxyPort=81
これは、2 つの Ant プロパティを設定するだけです。
プロキシのもう 1 つのトラブル箇所は、認証プロキシです。Ant はここで JVM が行うことを超えることはできず、プロキシ関連の問題をリモートで診断、テスト、修正することは非常に難しいため、セキュアプロキシの背後で作業するユーザーは、満足できるまで JVM プロパティの設定に多くの時間を費やす必要があります。
Ant が c:\ant\ にインストールされていると仮定します。次のように環境を設定します。
set ANT_HOME=c:\ant set JAVA_HOME=c:\jdk11.0.8_10 set PATH=%PATH%;%ANT_HOME%\bin
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
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 プロジェクトは、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 のサポートをインストールするとします。
$ANT_HOME/lib
です。これは、JPackage の場合は通常 /usr/share/ant/lib です。もう 1 つ、あまり煩雑でないオプションは、ホームディレクトリの .ant/lib サブディレクトリを作成し、そこに JPackage 以外の Ant JAR を配置して、JPackage ライブラリを同じフォルダー内の JPackage 以外のものと混同しないようにすることです。Ant がライブラリを見つける場所に関する詳細については、こちらを参照してください。Antを実行する方法はたくさんあります。少なくとも以下のものが必要です。
JAVA_HOME
環境変数が設定されている場合、必要なJDKクラスを自動的に追加します。ant.home
をAntをインストールしたディレクトリに設定する必要があります。これもAntスクリプトによって、ANT_HOME
環境変数の値に設定されます。ANT_OPTS
環境変数をサポートしています。一部のスクリプトは、ユーザーのホームディレクトリに保存された追加のスクリプトも読み込みます。これは、そのようなオプションを設定するために使用できます。詳細については、プラットフォームの起動スクリプトのソースを参照してください。ソースからAntをビルドするには、Antのソース配布をインストールするか、GitからAntのリポジトリをクローンすることができます。詳細については、ソース配布を参照してください。
ソースをインストールしたら、インストールディレクトリに移動します。
JAVA_HOME
環境変数をJDKがインストールされているディレクトリに設定します。オペレーティングシステムでの設定例については、Antのインストールを参照してください。
注意: Antのブートストラッププロセスには、OpenJDKやOracleのjavacのような欲張りなコンパイラが必要です。gcjやkjcでは動作しません。
関心のあるタスクをビルドするために必要な補助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のバイナリディストリビューションが作成されます。
上記のアクションは次のことを行います。
distターゲットを指定します。
ほとんどの場合、ビルドスクリプトが自動的に行うため、明示的にAntをブートストラップする必要はありません。ただし、使用しているビルドファイルが、ブートストラップされたAntにまだコンパイルされていない機能を使用している場合は、手動でブートストラップする必要があります。bootstrap.bat(Windows)またはbootstrap.sh(UNIX)を実行して、Antの新しいブートストラップバージョンをビルドします。
ビルドを現在のANT_HOME
ディレクトリにインストールする場合は、以下を使用できます。必要に応じて、時間のかかるJavadocステップを回避できます。build install (Windows)
sh build.sh install (Unix)
これにより、binおよびlibディレクトリのみがインストールされます。build install-lite (Windows)
sh build.sh install-lite (Unix)
installとinstall-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 | ftp、rexecおよび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
|
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タスク、xzresource、tar/untarタスクでのxz圧縮 | https://www.tukaani.org/xz/java.html |
JUnit 5 Platform JAR
|
junitlauncherタスク。選択されたテストエンジンによっては追加のライブラリが必要になる場合があります。詳細については、そのタスクのドキュメントを参照してください。 | https://junit.dokyumento.jp/junit5/ |
Antには組み込みの診断機能があります。ant -diagnosticsを実行すると、Antは内部状態を確認し、出力します。このコードは、以下の内容を確認して出力します。
ANT_HOME/lib
にあるJARファイル。ant -diagnosticsを実行することは、Antが正しくインストールされているかを確認するための良い方法です。また、問題の自己診断を行うための最初のステップでもあります。ユーザーメーリングリストに報告される構成の問題は、おそらく誰かがこのコマンドを実行して結果を表示するように求めることになるでしょう。したがって、自分で使用することで時間を節約できます。
IDE内から診断を実行する場合は、diagnosticsタスクを使用して、Antオプションと同じテストを実行します。これをビルドファイルの診断ターゲットに追加することで、IDEで利用可能なタスク、XMLパーサーとクラスパスなどを確認できます。
Antのインストールや動作に問題がある場合は、Antユーザーメーリングリストが問題を解決するための最良の場所です。まず宿題を済ませて、それがCLASSPATH
の問題ではないことを確認し、診断チェックを実行して、Antが自身の状態をどう考えているかを確認してください。なぜ開発者リストではなく、ユーザーリストなのか?それは、開発者よりもユーザーの方が多く、より多くの人があなたを助けることができるからです。
Antに対するバグレポートは、構成に関する本当に修正可能なバグ(特定のプラットフォーム、特定のJVMバージョンで動作しないなど)がAntに存在する場合、またはユーザーメーリングリストからそうするように勧められた場合にのみ、構成/起動の問題に対して提出してください。