S-JIS[2010-02-27] 変更履歴

Ant:java

javaプログラムの実行を行うコアタスク。
(org.apache.tools.ant.taskdefs.Java extends Task

最新java


属性

属性 説明 javaコマンド
のオプション
classname="クラス名" 実行するクラス名。 クラス名
jar="実行可能jarファイル" 実行可能jarファイルを指定する。
fork=trueである必要がある。
-jar jarファイル名
classpath="クラスパス" クラスパス -classpath クラスパス
classpathref="pathのID" クラスパス。pathタスクで指定されたパスのIDを指定する。
fork="true" JavaVMを別プロセスで起動するかどうか。
デフォルトはfalse(ただ単に指定されたクラスのmain()を呼び出す)。
 
spawn="false" JavaVMの実行の終了を待つかどうか。
デフォルトはfalse。
trueにする場合はforkもtrueである必要がある。
 
jvm="java" javaコマンドの名前。たぶん絶対パスで指定したい場合の為にあるのだろう。
デフォルトは「java」。
 
maxmemory="1024m" 使用するメモリーの最大サイズ。
forkがtrueでないと無効。
-Xmxサイズ
failonerror="false" リターンコードが0以外の場合にAntがBuildExceptionを出すかどうか。
デフォルトはfalse。
 
resultproperty="プロパティー名" リターンコードを格納するプロパティーを指定する。
failonerrorがtrueだとBuildExceptionが発生するのでプロパティーはセットされない。
 
dir="ディレクトリー" JavaVMで実行する際のカレントディレクトリー。
forkがtrueでないと無効。
 
output="ファイル名" 標準出力の出力先となるファイル。
errorerrorpropertyが指定されていない場合、標準エラーもここに出力される。
> ファイル
error="ファイル名" 標準エラーの出力先となるファイル。 2> ファイル
logError="false" 標準エラーの内容をAntのログにも出力するかどうか。
デフォルトはfalse。
 
append="false" ouputerrorの出力を追加にするかどうか。  
outputproperty="プロパティー名" 標準出力の出力先となるプロパティー。
errorerrorpropertyが指定されていない場合、標準エラーもここに出力される。
fork=trueでないと効かない?
 
errorproperty="プロパティー名" 標準エラーの出力先となるプロパティー。
fork=trueでないと効かない?
 
input="ファイル名" 標準入力の入力元となるファイル。
inputとinputstringはどちらかのみが指定可能。
< ファイル
inputstring="文字列" 標準入力へ渡される文字列。
inputとinputstringはどちらかのみが指定可能。
 
newenvironment="false" trueにすると、環境変数が指定された際に(現在の環境変数の内容を引き継がず)新しい環境変数となる。
forkがtrueでないと無効。
 
timeout="タイムアウト時間" 指定した時間が過ぎても実行が終了しない場合にBuildExceptionが発生する。
単位:ミリ秒。
 

ボディー部に入れられるタグ

タグ(使用例) 説明 javaのオプション
<arg value="引数" /> 実行するクラスの引数の指定。
main(String[] args)のargs。
 
<jvmarg value="-Xms256m" /> VM引数の指定。  
<classpath refid="classpath" /> クラスパスの指定。 -classpath クラスパス
<sysproperty key="システムプロパティー名" value="" /> システムプロパティーの指定。 -Dシステムプロパティー名=値
<env key="環境変数名" value="" /> 環境変数の指定。  

argjvmargsyspropertyenvといったタグでは、値の指定方法がいくつかある。

属性 説明
value 値を文字列で指定する。
file ファイルの絶対パスの文字列となる。
path 複数のパスを区切り文字で区切った文字列となる。
パス区切り文字は自動的に実行OS用に変換される。
pathref 他で指定されたパスを参照するということ以外はpathと同様。

build.xml:

<?xml version="1.0" encoding="Shift_JIS"?>
<project name="execute_java" default="execute" basedir="..">
	<target name="execute">
		<java classname="jp.hishidama.sample.Simple" resultproperty="prop.result">
			<classpath path="classes" />
			<arg value="zzz" />
		</java>
		<echoproperties prefix="prop." />
	</target>
</project>

Ant目次へ戻る / 技術メモへ戻る
メールの送信先:ひしだま