Get

説明

URL からファイルを取得します。 verbose オプションが on の場合、このタスクは取得した 100 Kb ごとに . を表示します。 ランタイムでサポートされている URL スキーマ(http:https:ftp:jar: など)はすべてここで有効です。

usetimestamp オプションを使用すると、リモートファイルがローカルコピーよりも新しい場合にのみ取得されるようにダウンロードを制御できます。 ローカルコピーがない場合は、常にダウンロードが行われます。 ファイルがダウンロードされると、ダウンロードされたファイルのタイムスタンプはリモートのタイムスタンプに設定されます。 注意: このタイムスタンプ機能は、HTTP プロトコルを使用したダウンロードでのみ機能します。

ユーザー名とパスワードを指定できます。その場合、基本認証(「少しエンコードされたプレーンテキスト」)が使用されます。 これは HTTPS リンク経由でのみ安全です。

プロキシApache Ant 1.7.0 以降、Java 5 以降で実行されている Ant は、-autoproxy コマンドラインオプションで有効になっている場合、オペレーティングシステムのプロキシ設定を使用できます。 また、以前の Java バージョンには <setproxy> タスクがあります。 プロキシが有効になっている場合、リクエストがプロキシにリレーされると、localhost に対する <get> リクエストは期待どおりに機能しない場合があります。

パラメータ

属性 説明 必須
src ファイルを取得する URL。 はい、またはネストされたリソースコレクション
dest 取得したファイルを保存するファイルまたはディレクトリ。 はい
verbose 詳細な進行状況情報を表示します(on|off)。 いいえ。デフォルトは off
quiet エラーのみをログに記録します。(true|false)。 いいえ。デフォルトは false
ignoreerrors エラーをログに記録しますが、致命的とは見なしません。 いいえ。デフォルトは false
usetimestamp ローカルコピーのタイムスタンプに基づいてファイルを条件付きでダウンロードします。HTTP のみ いいえ。デフォルトは false
username 基本 HTTP 認証のユーザー名 password が設定されている場合は、はい
password 基本 HTTP 認証のパスワード username が設定されている場合は、はい
authenticateOnRedirect リダイレクトが追跡されたときに、資格情報も新しい場所に送信する必要があるかどうか。
Ant 1.10.13以降
いいえ。デフォルトは false
maxtime 単一のダウンロードにかかる最大時間(秒)。これを超えるとダウンロードは中断され、ダウンロードエラーとして扱われます。 Ant 1.8.0 以降 いいえ。デフォルトは 0 で、無制限を意味します
retries URI を開くための試行回数。
属性の名前は、値 1 が「エラー時に再試行しない」を意味し、値 0 が URI に到達しようとしないことを意味するため、誤解を招く可能性があります。
Ant 1.8.0以降
いいえ。デフォルトは 3
skipexisting ローカルファイルシステムに既に存在するファイルをスキップします
Ant 1.8.0以降
いいえ。デフォルトは false
httpusecaches HTTP のみ—true の場合、HttpUrlConnection レベルでのキャッシュを許可します。 false の場合、キャッシュをオフにします。
注意 これは、基になる UrlConnection クラスへのヒントにすぎません。実装とプロキシは、設定を無視することができます。
いいえ。デフォルトは true
useragent 送信する User-Agent HTTP ヘッダー。
Ant 1.9.3以降
いいえ。デフォルトは Apache Ant VERSION
tryGzipEncoding true に設定すると、Ant は転送するデータ量を削減するために gzip エンコーディングを受け入れることができ、コンテンツを透過的に解凍することをサーバーに伝えます。
これを true に設定すると、Ant は .tar.gz などのファイルを自動的に解凍します。
Ant 1.9.5以降
いいえ。デフォルトは false

ネストされた要素として指定されたパラメータ

すべてのリソースコレクション

リソースコレクション は、ダウンロードする URL のグループを選択するために使用されます。 コレクションに複数のリソースが含まれている場合、dest 属性は、ディレクトリが存在する場合はディレクトリを指している必要があり、存在しない場合はディレクトリが作成されます。 マッパーも指定しない限り、宛先ファイル名はソース URL のパスの最後の部分を使用します。

mapper

ネストされた mapper 要素を使用して、名前変換を定義できます。 mapper 要素の代わりに任意の filenamemapper タイプを使用することもできます。

マッパーは、リソースの名前を引数として受け取ります。 マッパーがマップされた名前を返さない、または複数返すリソースはスキップされます。 返された名前が相対パスである場合、dest 属性に対する相対パスと見なされます。

header

任意の数の HTTP ヘッダーをリクエストに追加できます。
ネストされた <header/> ノードの属性は次のとおりです

属性 説明 必須
name このヘッダーの名前またはキー。 null または空にすることはできません。 先頭と末尾のスペースは削除されます はい
value ヘッダーに割り当てる値。 null または空にすることはできません。 先頭と末尾のスペースは削除されます はい

https://ant.dokyumento.jp/ のインデックスページを取得し、ファイル help/index.html に保存します。

<get src="https://ant.dokyumento.jp/" dest="help/index.html"/>

ローカルコピーがない場合、または古い場合は、Ant の(現在および過去の)リリース管理者の PGP キーを取得します。 進行状況情報には、verbose オプションを使用します。

<get src="https://apache.dokyumento.jp/dist/ant/KEYS"
     dest="KEYS"
     verbose="true"
     usetimestamp="true"/>

アクセス制御のあるサーバーからいくつかのファイルを取得します。 HTTPS を使用しているため、基本認証がパスワードをプレーンテキストで送信するという事実は、第三者によって読み取られる可能性のあるビルドファイルの一部であるという事実を無視すれば問題ありません。 より高いセキュリティが必要な場合は、input タスクを使用してパスワードを照会することを検討してください。

<get src="https://insecure-bank.org/statement/user=1214"
     dest="statement.html"
     username="1214"
     password="secret"/>

次のようなマクロを使用する

<macrodef name="get-and-checksum">
  <attribute name="url"/>
  <attribute name="dest"/>
  <sequential>
    <local name="destdir"/>
    <dirname property="destdir" file="@{dest}"/>
    <get dest="${destdir}">
      <url url="@{url}"/>
      <url url="@{url}.sha1"/>
      <firstmatchmapper>
        <globmapper from="@{url}.sha1" to="@{dest}.sha"/>
        <globmapper from="@{url}" to="@{dest}"/>
      </firstmatchmapper>
    </get>
    <local name="checksum.matches"/>
    <local name="checksum.matches.fail"/>
    <checksum file="@{dest}" algorithm="sha" fileext=".sha"
              verifyproperty="checksum.matches"/>
    <condition property="checksum.matches.fail">
      <equals arg1="${checksum.matches}" arg2="false"/>
    </condition>
    <fail if="checksum.matches.fail">Checksum error</fail>
  </sequential>
</macrodef>

アーティファクトを SHA1 チェックサム(もちろん、チェックサムファイルの特定の命名規則を想定)とともにダウンロードし、オンザフライでチェックサムを検証することができます。

<get dest="downloads">
  <url url="https://ant.dokyumento.jp/index.html"/>
  <url url="https://ant.dokyumento.jp/faq.html"/>
</get>

カスタム HTTP ヘッダーの使用

<get src="https://ant.dokyumento.jp/index.html" dest="downloads">
  <header name="header1" value="headerValue1"/>
  <header name="header2" value="headerValue2"/>
  <header name="header3" value="headerValue3"/>
</get>

https://ant.dokyumento.jp/ のインデックスページと FAQ ページを取得し、必要に応じて作成されるディレクトリ downloads に保存します。