DownloadFile タスク

ハイパーテキスト転送プロトコル (HTTP) を使って、指定したファイルをダウンロードします。

Note

DownloadFile タスクは MSBuild 15.8 以降でのみ使用できます。

パラメーター

DownloadFile タスクのパラメーターの説明を次の表に示します。

パラメーター 説明
DestinationFileName 省略可能な ITaskItem 型のパラメーターです

ダウンロードしたファイルに使用する名前です。 既定では、SourceUrl またはリモート サーバーに由来するファイル名が付けられます。
DestinationFolder 必須の ITaskItem 型のパラメーターです。

ファイルのダウンロード先のフォルダーを指定します。 フォルダーが存在しない場合は作成されます。
DownloadedFile 省略可能な ITaskItem 型の出力パラメーターです。

ダウンロードされたファイルを指定します。
Retries 省略可能な Int32 型のパラメーターです。

ダウンロードに失敗した場合の再試行回数を指定します。 既定値はゼロです。
RetryDelayMilliseconds 省略可能な Int32 型のパラメーターです。

再試行の間隔をミリ秒単位で指定します。 既定値は 5000 です。
SkipUnchangedFiles 省略可能な Boolean 型のパラメーターです。

true の場合、変更されていないファイルのダウンロードをスキップします。 既定値は true です。 DownloadFile タスクでは、リモート サーバーに従って、ファイルのサイズが等しく、最終更新時刻が等しい場合、ファイルは変更されていないものと見なされます。

注: HTTP サーバーによってはファイルの最終更新日時が示されておらず、その場合はファイルが再度ダウンロードされます。
SourceUrl 必須の String 型のパラメーターです。

ダウンロードする URL を指定します。

解説

上記のパラメーター以外に、このタスクは TaskExtension クラスからパラメーターを継承します。このクラス自体は、Task クラスから継承されます。 これらの追加のパラメーターの一覧とその説明については、「TaskExtension Base Class」を参照してください。

次の例では、プロジェクトをビルドする前にファイルをダウンロードし、それを Content 項目に含めます。

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

    <PropertyGroup>
      <MyUrl>https://raw.githubusercontent.com/Microsoft/msbuild/master/LICENSE</MyUrl>
    </PropertyGroup>

    <Target Name="DownloadContentFiles" BeforeTargets="Build">
        <DownloadFile
            SourceUrl="$(MyUrl)"
            DestinationFolder="$(MSBuildProjectDirectory)">
        <Output TaskParameter="DownloadedFile" ItemName="Content" />
      </DownloadFile>
    </Target>

</Project>

関連項目