◆Antとは? |
AntはJavaベースのビルドツールです。Antを使用することによってソフトウエアを開発する際の様々な作業を自動化することができます。 |
◆ここでの環境 |
OS | Windows XP |
J2SE SDK | 1.4.1_01 |
Ant | 1.5.2 |
|
|
|
◆Java実行環境の構築 |
アプリケーション編を参考にしてJava実行環境を構築してください。 |
◆Antのダウンロード |
Antは以下のサイトからダウンロードできます。ダウンロードできたらファイルを解凍してください。
http://ant.apache.org/bindownload.cgi |
◆環境変数の設定 |
ANT_HOMEを新規に設定します。 |
環境変数 | 設定する値について |
ANT_HOME | ダウンロードしたファイルを解凍したフォルダのパスを指定。
(例)
C:\Download\apache-ant-1.5.2 |
PATH | %ANT_HOME%\binを追加 |
|
|
◆ソースファイルの作成 |
Antテスト用のソースファイルを作成します。javadoc編と同じソースを使用します。ソースに意味はありません。 |
■ソースファイルの置き場所 |
作業フォルダの下にsrcフォルダを作成してその下にソースファイルを作成します。 |
作業フォルダ-|
+--\src\HelloWorldJavaDoc.java
|
|
■作成 |
HelloWorldJavaDoc.java(ここからダウンロード) |
import java.io.*;
/**
* JavaDocテスト用クラスです。ソースに意味はありません。<br>
* @author 田中宏和
* @version 1.0
*/
public class HelloWorldJavaDoc {
/**
* コメント
*/
private String comment;
/**
* 引数なしのコンストラクタ
*/
public HelloWorldJavaDoc() {
}
/**
* コメントを引数とするコンストラクタ
* @param comment コメント
*/
public HelloWorldJavaDoc(String comment) {
this.comment = comment;
}
/**
* コメントの取得
* @return コメントを返す。<br>
* コメントが設定されていない場合「知らない」を返す。
*/
public String getComment() {
if (comment==null) {
return "知らない";
}
return comment;
}
/**
* コメントを設定
* @param comment コメント
*/
public void setComment(String comment) {
this.comment = comment;
}
/**
* コメントを出力ストリームに出力させる。<br>
* コメントがない場合「知らない」と出力。
* @param OutputStreamWriterクラス
* @throws java.io.IOException 入出力エラーが発生した場合にスローされる
*/
public void sayComment(OutputStreamWriter out) throws IOException {
if (comment==null) {
out.write("知らない");
} else {
out.write(comment);
}
}
} |
|
|
|
◆ビルドファイルの作成 |
■ビルドファイルとは? |
Antはbuild.xmlという名前のXML形式のファイルに書かれた指示に従って様々な作業を行います。このファイルのことをビルドファイルと呼びます。 |
■ビルドファイルの置き場所 |
作業フォルダの下にbuild.xmlファイルを作成します。 |
作業フォルダ-|
|-\build.xml
+--src\HelloWorldJavaDoc.java
|
|
■作成 |
ここでは以下の作業を行う設定を記述します。
1.ソースファイルのコンパイル
2.jarファイルの作成
3.javadocの作成
4.生成したファイルの削除 |
build.xml(ここからダウンロード) |
<?xml version="1.0" encoding="Shift_JIS"?>
<project name="javahelloant" default="jar" basedir=".">
<!-- ****プロパティ**** -->
<!-- ソースファイルがあるディレクトリ -->
<property name="src.dir" value="src"/>
<!-- クラスファイルを出力するディレクトリ -->
<property name="classes.dir" value="classes"/>
<!-- javadocを出力するディレクトリ -->
<property name="javadoc.dir" value="docs"/>
<!-- jarファイル名 -->
<property name="jar.name" value="javahelloant.jar"/>
<!-- ****ターゲット**** -->
<!-- jarファイルの作成 -->
<target name="jar" depends="compile">
<jar jarfile="${jar.name}" basedir="${classes.dir}"></jar>
</target>
<!-- コンパイル -->
<target name="compile">
<mkdir dir="${classes.dir}" />
<javac srcdir="${src.dir}" destdir="${classes.dir}"/>
</target>
<!-- javadocの作成 -->
<target name="javadoc">
<javadoc destdir="${javadoc.dir}">
<fileset dir="${src.dir}"/>
</javadoc>
</target>
<!-- 生成したファイルやフォルダの削除 -->
<target name="clean">
<delete dir="${classes.dir}" />
<delete dir="${javadoc.dir}" />
<delete file="${jar.name}" />
</target>
</project> |
|
|
|
◆antコマンドの使い方 |
ビルドファイルに記述された処理はantコマンドで実行することができます。 |
■antコマンドの使用方法 |
ターゲットはビルドファイルに記述したターゲットの名前を指定します。ターゲットを省略した場合はproject要素のdefault属性の値が使用されます。 |
ant [オプション] [ターゲット [ターゲット2 [ターゲット3] ...]] |
|
■オプションの説明 |
オプション | 説明 |
-help | ヘルプを表示します |
-projecthelp | プロジェクトのヘルプを表示します |
-version | バージョン情報を表示します |
-diagnostics | 現在の実行環境に関する情報を表示します |
-quiet
, -q | メッセージを出力しないようにします |
-verbose
, -v | メッセージをできるだけ出力するようにします |
-debug | デバック情報を表示します |
-emacs | 装飾なしのログ情報を生成します |
-logfile
<file>
-l <file> | ログを出力するファイルを指定します |
-logger <classname> | ロギングを行うためのクラスを指定します |
-listener <classname> | プロジェクトリスナーとして追加するクラスのインスタンスを指定します |
-buildfile <file>
-file <file>
-f <file> | ビルドファイルを指定します |
-D<property>=<value> | プロパティを設定します |
-propertyfile <name> | プロパティファイルを指定します |
-inputhandler <class> | ユーザーからの入力を扱うクラスを指定します |
-find <file> | ビルドファイルをファイルシステムのルートに向かい検索しそれを使用します |
|
|
◆コンパイルを行う |
コンパイルを行うにはビルドファイルに記述されたコンパイルを行うターゲットの名前を指定します。 |
コマンドプロンプト |
C:\JavaHello\Ant>ant
compile
Buildfile: build.xml
compile:
[mkdir] Created dir: C:\JavaHello\Ant\classes
[javac] Compiling 1 source file to C:\JavaHello\Ant\classes BUILD SUCCESSFUL
Total time: 6 seconds
C:\JavaHello\Ant> |
|
おおお!コンパイルできましたね! |
|
◆jarファイルの生成を行う |
jarファイルの生成を行うにはビルドファイルに記述されたjarファイルの生成を行うターゲットの名前を指定します。また、プロジェクトのデフォルトのターゲットがjarファイルの生成になっているのでターゲットを指定しなくてもjarファイルの生成を行います。 |
コマンドプロンプト |
C:\JavaHello\Ant>ant
jar
Buildfile: build.xml compile: jar:
[jar] Building jar: C:\JavaHello\Ant\javahelloant.jar BUILD SUCCESSFUL
Total time: 1 second
C:\JavaHello\Ant> |
|
コマンドプロンプト |
C:\JavaHello\Ant>ant
Buildfile: build.xml
compile: jar:
[jar] Building jar: C:\JavaHello\Ant\javahelloant.jar BUILD SUCCESSFUL
Total time: 1 second
C:\JavaHello\Ant> |
|
おおおお!jarファイルが生成できましたね! |
|
◆javadocの生成を行う |
javadocの生成を行うにはビルドファイルに記述されたjavadocの生成を行うターゲットの名前を指定します。 |
コマンドプロンプト |
C:\JavaHello\Ant>ant
javadoc
Buildfile: build.xml
javadoc:
[javadoc] Generating Javadoc
[javadoc] Javadoc execution
[javadoc] ソースファイル C:\JavaHello\Ant\src\HelloWorldJavaDoc.java
を読み込んでいます...
[javadoc] Javadoc 情報を構築しています...
[javadoc] 標準 Doclet バージョン 1.4.1 [javadoc] C:\JavaHello\Ant\docs\constant-values.html
の生成
[javadoc] 全パッケージとクラスの階層ツリーを作成しています...
[javadoc] 全パッケージとクラスのインデックスを作成しています...
[javadoc] C:\JavaHello\Ant\docs\overview-tree.html の生成
[javadoc] C:\JavaHello\Ant\docs\index-all.html の生成
[javadoc] C:\JavaHello\Ant\docs\deprecated-list.html
の生成
[javadoc] 全クラスのインデックスを作成しています...
[javadoc] C:\JavaHello\Ant\docs\allclasses-frame.html
の生成
[javadoc] C:\JavaHello\Ant\docs\allclasses-noframe.html
の生成
[javadoc] C:\JavaHello\Ant\docs\index.html の生成
[javadoc] C:\JavaHello\Ant\docs\packages.html の生成
[javadoc] C:\JavaHello\Ant\docs\HelloWorldJavaDoc.html
の生成
[javadoc] C:\JavaHello\Ant\docs\package-list の生成
[javadoc] C:\JavaHello\Ant\docs\help-doc.html の生成
[javadoc] C:\JavaHello\Ant\docs\stylesheet.css の生成 BUILD SUCCESSFUL
Total time: 2 seconds
C:\JavaHello\Ant> |
|
おおお!javadocが生成できましたね! |
|
◆生成したファイルやフォルダを削除する |
生成したファイルやフォルダの削除を行うにはビルドファイルに記述された生成したファイルやフォルダの削除を行うターゲットの名前を指定します。 |
コマンドプロンプト |
C:\JavaHello\Ant>ant clean
Buildfile: build.xml clean:
[delete] Deleting directory C:\JavaHello\Ant\classes
[delete] Deleting directory C:\JavaHello\Ant\docs
[delete] Deleting: C:\JavaHello\Ant\javahelloant.jar BUILD SUCCESSFUL
Total time: 1 second
C:\JavaHello\Ant> |
|
おおお!生成したファイルやフォルダが削除できましたね! |
没有评论:
发表评论