doclet anchor.png Edit

  • サンプルソース
# cd /home/test/src/com/domain/test
# vi DocletTest
package com.domain.test;
import java.util.Properties;
import com.sun.javadoc.RootDoc;
import com.sun.javadoc.ClassDoc;
import com.sun.javadoc.ConstructorDoc;
import com.sun.javadoc.ExecutableMemberDoc;
import com.sun.javadoc.FieldDoc;
import com.sun.javadoc.MethodDoc;
import com.sun.javadoc.Parameter;
public class DocletTest{
  public static boolean start(RootDoc root){
    DocletTest dt=new DocletTest();
    ClassDoc[] classes=root.classes();
    for (int i=0; i<classes.length; i++){
      dt.list(classes[i]);
    }
    return true;
  }
  public void list(ClassDoc cd){
    System.out.println("class:"+cd.name());
    System.out.println("class:"+cd.modifiers());
    System.out.println("class:"+cd.qualifiedName());
    System.out.println("class:"+cd.containingPackage().name());
    ConstructorDoc[] constructors=cd.constructors();
    for (int i=0; i<constructors.length; i++){
       printDoc(constructors[i],"constructor");
    }
    MethodDoc[] methods=cd.methods();
    for (int i=0; i<methods.length; i++){
       printDoc(methods[i],"method");
       System.out.println("return:"+methods[i].returnType().typeName());
       System.out.println("return:"+methods[i].returnType().toString());
    }
    FieldDoc[] fields=cd.fields();
    for (int i=0; i<fields.length; i++){
      System.out.println("field[doc.name]:"+fields[i].name());
      System.out.println("field[doc.modi]:"+fields[i].modifiers());
      System.out.println("field[doc.qual]:"+fields[i].qualifiedName());
    }
  }
  private void printDoc(ExecutableMemberDoc doc,String type){
    System.out.println(type+"[doc.name]:"+doc.name());
    System.out.println(type+"[doc.modi]:"+doc.modifiers());
    System.out.println(type+"[doc.qual]:"+doc.qualifiedName());
    Parameter[] parameters=doc.parameters();
    for (int i=0; i<parameters.length; i++){
      printParameter(parameters[i]);
    }
  }
  private void printParameter(Parameter parameter){
    System.out.println("name:"+parameter.name());
    System.out.println("type:"+parameter.typeName());
  }
}
  • ビルドの設定と実行
# cd /home/test
# vi build.xml

<project>ディレクティブに追加

   <target name="doclettest">
    <javadoc
      docletpathref="class.path"
      classpathref="class.path"
      doclet="com.domain.test.DocletTest">
      <fileset dir="${build.src}/com.domain/dao" includes="*DaoImpl.java"/>
    </javadoc>
  </target>
# ant doclettest

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom
Counter: 434, today: 1, yesterday: 0
最終更新: 2008-11-26 (水) 02:00:49 (JST) (1272d) by aqua
オススメ

おすすめ
カレンダ
前月2012年 5月翌月
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
<今日>
ログイン
ユーザ名:

パスワード:



パスワード紛失

新規登録
天気予報

資料提供天気予報コム
アクセスカウンタ
今日 : 157157157
昨日 : 577577577
総計 : 363711363711363711363711363711363711