プロジェクト内のプロパティ(名前と値による)、あるいはプロパティ(ファイルまたはリソースからの)のセットを設定します。 プロパティは大文字と小文字を区別します。
プロパティをセットするには、次の5つの方法があります:
これらの方法を組み合わせることは可能ですが、一度に一つだけ使用されるべきです。 例えば、プロパティがセットされる順番で問題が生じるかもしれません。
セットされているプロパティの値の一部は、他のプロパティへの参照を含んでいるかもしれません。 これらの参照は、プロパティがセットされる時に解決されます。 これは、さらにプロパティファイルからロードされたプロパティにも適用できます。
あらかじめ定義されたプロパティのリストは ここで見つけることができます。here.
このタスクは、environment属性によって、
OpenVMSシステム上ですべての定義を正しく読込みます。
複数の等価な名前の論理は、等価な名前のカンマ区切りのリストの値として、プロパティにマップされます。
複数のテーブルで論理が定義されているとき、最もローカルな定義が利用できます。
(テーブルの優先度は、PROCESS, JOB, GROUP, SYSTEMの順です。)
| 属性 | 説明 | 必須 |
| name | 設定するプロパティの名前です。 | No |
| value | プロパティの値です。 | name 属性が使われている時に、これら三つのうちの一つが必須 |
| location | プロパティに指定されたファイルの絶対ファイル名を設定します。 この属性の値が絶対パスの場合には、それは変更されません ( / と \ は現在のプラットフォームの慣習に合わせて変換されます)。 そうでなければ、プロジェクトの basedir への相対パスとして解釈され、拡張されます。 | |
| refid | 別の場所で定義したオブジェクトへの参照。 PATH 類似構造やプロパティへの参照だけが適切です。 | |
| resource | プロパティファイルのリソース名です。 | name 属性が使われていない時に、これら三つのうちの一つが必須 |
| file | プロパティファイルのファイル名です。 | |
| url | 読込むプロパティのurlです。 | |
| environment | 環境変数を読み取るときに使うプレフィックスです。
従って、あなたが environment="myenv" と指定した場合には、 OS 固有の環境変数に "myenv.PATH" または "myenv.TERM" というプロパティ名でアクセスすることができるでしょう。
注意していただきたいのは、もしプロパティ名の最後に "." を付加した場合は、それは重複しないという事です。
例えば、 "environment=myenv." としたら、 "myenv.PATH" にも "myenv.TERM" にもアクセスすることが許されます。 この機能は、現在のところ一部のプラットフォームでのみ実装されています。 この機能がサポートされたプラットフォームを増やす為のパッチを送る事は歓迎します;)。 あなたのオペレーティング・システム上の環境変数がそうでなくても、このプロパティは大文字と小文字を区別する事に注意して下さい。例えば、 Windows 2000 上では ${env.PATH} ではなく ${env.Path} となります。 |
|
| classpath | リソースを見つける時に使われるクラスパスです。 | No |
| classpathref | 他の場所で定義された <path> への参照として与えられる、 リソースを見つける時に使われるクラスパスです。 | No |
| prefix | file または resource を使用してロードされたプロパティに適用するための接頭辞。
もし指定されなければ "." が接頭辞に追加されます。 |
No |
Property の classpath 属性は PATH 類似構造 です。
さらに、それは入れ子の classpath 要素によってセットすることができます。
<property name="foo.dist" value="dist"/>
プロパティ foo.dist に値 "dist" を設定します。
<property file="foo.properties"/>
"foo.properties" という名前のファイルからプロパティのセットを読み込みます。
<property url="http://www.mysite.com/bla/props/foo.properties"/>
"http://www.mysite.com/bla/props/foo.properties"というアドレスからプロパティのセットを読み込みます。
<property resource="foo.properties"/>
"foo.properties" という名前のリソースからプロパティのセットを読み込みます。
以下のようにすることで、 Ant のすべてのビルドのグローバルなプロパティファイルを参照することができることに注意してください。
<property file="${user.home}/.ant-global.properties"/>
"user.home" プロパティは、あなたのホームディレクトリになるように Java 仮想マシンによって定義されています。 "user.home"プロパティがファイルシステム内のどこかは、OSのバージョンとJVM実装に依存します。 Unixベースのシステムでは、ユーザホームディレクトリにマップします。 最近のWindowsでは、"Documents and Settings"フォルダ内のユーザディレクトリになります。 Windows 98/MEのような古いWindowsでは、一方のOS/JVMの組み合わせで、予想しづらいです。
<property environment="env"/>
<echo message="Number of Processors = ${env.NUMBER_OF_PROCESSORS}"/>
<echo message="ANT_HOME is set to = ${env.ANT_HOME}"/>
システム環境変数を読んで、プレフィックス "env" で始まるプロパティに格納します。 この機能は選ばれたオペレーティングシステムでだけ動作することに注意して下さい。 echo によって二つの値が表示されます。
例:
build.compiler=jikes
deploy.server=lucky
deploy.port=8080
deploy.url=http://${deploy.server}:${deploy.port}/
Copyright © 2000-2004 The Apache Software Foundation. All rights Reserved.
[訳注:これは西野亨、高崎俊史の訳を参考に、横田聡が翻訳しました。日本語訳に対するコメントがあれば report@jajakarta.orgに送ってください]