Ant内蔵タスクのcopy
2670 ワード
一、概説
copyは、ファイルまたはリソースのセットを新しいファイルまたはディレクトリにコピーするためのAnt内蔵タスクです.デフォルトでは、ソースファイルがターゲットファイルより更新されたり、ターゲットファイルが存在しない場合にのみコピーされますが、overwriteプロパティを使用してファイルを上書きできます.リソースセットコピーするファイルのセットを選択するには、リソースセットを使用する場合はtodirプロパティを設定する必要があります.ファイルなどの絶対パスを名前として返すリソースもありますが、flattenプロパティや埋め込みmapperを使用しないと、予想と一致しない結果になる可能性があります.レプリケーション操作でフィルタが使用されている場合は、コピーをテキストファイルに制限する必要があります.バイナリファイルはコピー操作で破損します.filter暗黙的な定義フィルタでも表示されるfiltersetでもそうです.さらにcopyはfilterchain要素をサポートし、filterchainがfiltersetと同時に現れると、すべてのfilterchainがfilterset処理よりも優先されます.
二、属性
file:コピーするファイル.
preservelastmodified:コピーファイルの最終変更時間をソースファイルの最終変更時間に設定するかどうか、デフォルトはfalseです.
tofile:コピーしたファイルの場所.
todir:コピーされたディレクトリ.
overwrite:ターゲットファイルがソースファイルより更新されてもターゲットファイルが上書きされ、デフォルトはfalseです.
force:Ant 1.8.2から、ターゲットファイルが読み取り専用であってもファイルが上書きされ、デフォルトはfaleです.
filtering:コピー時にグローバルコンストラクションファイルフィルタを使用するかどうか.このプロパティが設定されていない場合やfalseに設定されていない場合でも、ネストされたfiltersetを使用するとグローバルなコンストラクションファイルフィルタが使用されます.デフォルトはfalseです.
flatten:ソースファイルのディレクトリ構造を無視して、todirプロパティで指定したディレクトリにすべてのファイルをコピーするかどうか.flatten mapperを使用して同じ効果を達成できます.デフォルトはfalseです.
includeEmptyDirs:filesetの空のディレクトリをコピーするかどうか.デフォルトはtrueです.
failonerror:falseの場合、ファイルが存在しないか、ディレクトリにネストされたfilesetが存在しないか、コピーに異常が発生した場合、警告情報が記録されますが、構築は停止しません.デフォルトはtrueです.
quiet:Ant 1.8.3からfailonerrorプロパティがfalseに設定されている場合、ファイルが存在しないか、ディレクトリにネストされたfilesetが存在しないか、コピーに異常が発生した場合、quietがtrueの場合、警告情報は記録されません.デフォルトはfalseです.
verbose:コピー中のファイルを記録するかどうか、デフォルトはfalseです.
Encoding:Ant 1.5からコピーファイルの符号化を設定し、デフォルトはJVM符号化フォーマットとする.
outputencoding:Ant 1.6からファイルを書くときの符号化を設定し、encoding属性を設定した場合、デフォルトはencoding属性と同じであり、そうでなければJVM符号化フォーマットと同じである.
Enablemultiplemappings:Ant 1.6からすべてのソースパスマッピングを処理するかどうか、trueであればすべてのマッピングを処理し、falseであれば最初のファイルまたはディレクトリのみを処理します.このプロパティはmapperサブエレメントが存在する場合にのみ有効です.デフォルトはfalseです.
granularity:各ファイルシステムが修正時間をミリ秒まで正確にサポートしているわけではないので、Ant 1.6.2から修正時間に許容される時間誤差を設定できます.デフォルトは1秒、DOSシステムは2秒です.
fileプロパティを使用する場合、tofileとtodirプロパティの両方を使用できます.埋め込みリソースセット要素の場合、含まれるリソースが1より大きい場合、またはfilesetでdirプロパティのみが定義されている場合、またはfileプロパティが指定されている場合はtodirプロパティのみが使用できます.Apache Ant 1.8.2の前に、tofileプロパティはファイルシステムリソースのトップレベルのコピーのみをサポートします.
三、簡単な例
copyは、ファイルまたはリソースのセットを新しいファイルまたはディレクトリにコピーするためのAnt内蔵タスクです.デフォルトでは、ソースファイルがターゲットファイルより更新されたり、ターゲットファイルが存在しない場合にのみコピーされますが、overwriteプロパティを使用してファイルを上書きできます.リソースセットコピーするファイルのセットを選択するには、リソースセットを使用する場合はtodirプロパティを設定する必要があります.ファイルなどの絶対パスを名前として返すリソースもありますが、flattenプロパティや埋め込みmapperを使用しないと、予想と一致しない結果になる可能性があります.レプリケーション操作でフィルタが使用されている場合は、コピーをテキストファイルに制限する必要があります.バイナリファイルはコピー操作で破損します.filter暗黙的な定義フィルタでも表示されるfiltersetでもそうです.さらにcopyはfilterchain要素をサポートし、filterchainがfiltersetと同時に現れると、すべてのfilterchainがfilterset処理よりも優先されます.
二、属性
file:コピーするファイル.
preservelastmodified:コピーファイルの最終変更時間をソースファイルの最終変更時間に設定するかどうか、デフォルトはfalseです.
tofile:コピーしたファイルの場所.
todir:コピーされたディレクトリ.
overwrite:ターゲットファイルがソースファイルより更新されてもターゲットファイルが上書きされ、デフォルトはfalseです.
force:Ant 1.8.2から、ターゲットファイルが読み取り専用であってもファイルが上書きされ、デフォルトはfaleです.
filtering:コピー時にグローバルコンストラクションファイルフィルタを使用するかどうか.このプロパティが設定されていない場合やfalseに設定されていない場合でも、ネストされたfiltersetを使用するとグローバルなコンストラクションファイルフィルタが使用されます.デフォルトはfalseです.
flatten:ソースファイルのディレクトリ構造を無視して、todirプロパティで指定したディレクトリにすべてのファイルをコピーするかどうか.flatten mapperを使用して同じ効果を達成できます.デフォルトはfalseです.
includeEmptyDirs:filesetの空のディレクトリをコピーするかどうか.デフォルトはtrueです.
failonerror:falseの場合、ファイルが存在しないか、ディレクトリにネストされたfilesetが存在しないか、コピーに異常が発生した場合、警告情報が記録されますが、構築は停止しません.デフォルトはtrueです.
quiet:Ant 1.8.3からfailonerrorプロパティがfalseに設定されている場合、ファイルが存在しないか、ディレクトリにネストされたfilesetが存在しないか、コピーに異常が発生した場合、quietがtrueの場合、警告情報は記録されません.デフォルトはfalseです.
verbose:コピー中のファイルを記録するかどうか、デフォルトはfalseです.
Encoding:Ant 1.5からコピーファイルの符号化を設定し、デフォルトはJVM符号化フォーマットとする.
outputencoding:Ant 1.6からファイルを書くときの符号化を設定し、encoding属性を設定した場合、デフォルトはencoding属性と同じであり、そうでなければJVM符号化フォーマットと同じである.
Enablemultiplemappings:Ant 1.6からすべてのソースパスマッピングを処理するかどうか、trueであればすべてのマッピングを処理し、falseであれば最初のファイルまたはディレクトリのみを処理します.このプロパティはmapperサブエレメントが存在する場合にのみ有効です.デフォルトはfalseです.
granularity:各ファイルシステムが修正時間をミリ秒まで正確にサポートしているわけではないので、Ant 1.6.2から修正時間に許容される時間誤差を設定できます.デフォルトは1秒、DOSシステムは2秒です.
fileプロパティを使用する場合、tofileとtodirプロパティの両方を使用できます.埋め込みリソースセット要素の場合、含まれるリソースが1より大きい場合、またはfilesetでdirプロパティのみが定義されている場合、またはfileプロパティが指定されている場合はtodirプロパティのみが使用できます.Apache Ant 1.8.2の前に、tofileプロパティはファイルシステムリソースのトップレベルのコピーのみをサポートします.
三、簡単な例