도크 렛의 개요 - xrath.com 에서 번역됨

# 표준 도크 렛

Javadoc 의 목차

## 목차

- 「표준 도크 렛의 개요」
- 「커멘드행으로부터의 표준 도크 렛의 실행」
- 「프로그램으로부터의 표준 도크 렛의 실행」
- 「표준 도크 렛의 소스」

## 표준 도크 렛의 개요

표준 도크 렛은, SunTM 가 제공하는 도크 렛으로, Javadoc 의 디폴트의 HTML 형식에 의한 API 출력을 생성합니다. 이 JDK 문서에 포함되는 JavaTM 플랫폼용의 「API 문서」는, 표준 도크 렛의 출력예입니다. Javadoc 의 `-doclet` 옵션을 사용해 커멘드행으로 다른 도크 렛이 지정되어 있지 않은 경우는, 표준 도크 렛이 사용됩니다.

## 커멘드행으로부터의 표준 도크 렛의 실행

커멘드행으로 `-doclet` 태그에 의해 다른 도크 렛이 지정되어 있지 않은 경우, 표준 도크 렛이 디폴트로 불려 갑니다. 예를 들어, 다음의 커멘드를 실행한다고 합니다.

>     % javadoc myPackage

이 커멘드에서는, 표준 도크 렛을 사용해 `myPackage` 의 디폴트 스타일의 HTML API 문서가 생성됩니다. `-doclet` 옵션을 지정하지 않고 javadoc 를 실행했을 경우는,`-doclet` 옵션을 지정해 표준 도크 렛을 호출했을 경우와 같은 처리를 합니다. 즉, 전술의 커멘드는, 다음의 커멘드와 동등합니다.

>     % javadoc -docletpath /home/user/jdk1. 5.0/lib/tools.jar \
>       -doclet com.sun.tools.doclets.standard.Standard \
>       myPackage

> 또는 다음의 커멘드와 동등합니다.

>     % javadoc -docletpath /home/user/jdk1. 5.0/lib/tools.jar \
>       -doclet com.sun.tools.doclets.formats.html.HtmlDoclet \
>       myPackage

어느 쪽의 어프로치에서도 같은 결과가 됩니다.

## 프로그램으로부터의 표준 도크 렛의 실행

Javadoc 툴에는, 프로그램으로부터 이용할 수 있는 인터페이스가 있습니다. 이 인터페이스에는, Java 언어로 기술된 다른 프로그램으로부터 Javadoc 툴을 호출하기 위한 public 메소드가 몇개인가 준비되어 있습니다. 이러한 메소드는,`lib/tools.jar` 내의 `com.sun.tools.javadoc.Main` 클래스에 있습니다. 다음에 그 예를 나타냅니다.

`main` 를 호출하는 경우, 다음과 같은 단점이 있습니다.
(1) 실행할 때마다 1 회 밖에 호출할 수 없습니다. 1.2.x 또는 1.3.x 에서는, 몇번이나 호출할 필요가 있는 경우는,`java.lang.Runtime.exec("javadoc ...")` (을)를 사용해 주세요.
(2) `System.exit()` 를 사용해 종료합니다. `System.exit()` 에서는 프로그램 전체가 종료합니다.
(3) 종료 코드가 돌려주어지지 않습니다.

    public static void main(java.lang.String[] args)

> 커멘드행 인터페이스.
> 파라미터:
>   `args` - 커멘드행 파라미터.

`execute` 메소드에서는,`main` 의 단점이 해결되고 있습니다.

    public static int execute(java.lang.String[] args)

> 프로그램 인터페이스.
> 파라미터:
>   `args` - 커멘드행 파라미터.
> 반환값:
>   return code.

    public static int execute(java.lang.String programName,
                              java.lang.String[] args)

> 프로그램 인터페이스.
> 파라미터:
>   `programName` - 프로그램명 (에러 메세지용).
>   `args` - 커멘드행 파라미터.
> 반환값:
>   return code.

    public static int execute(java.lang.String programName,
                              java.lang.String defaultDocletClassName,
                              java.lang.String[] args)

> 프로그램 인터페이스.
> 파라미터:
>   `programName` - 프로그램명 (에러 메세지용).
>   `defaultDocletClassName` - 완전 수식 클래스명.
>   `args` - 커멘드행 파라미터.
> 반환값:
>   return code.

    public static int execute(java.lang.String programName,
                              java.io.PrintWriter errWriter,
                              java.io.PrintWriter warnWriter,
                              java.io.PrintWriter noticeWriter,
                              java.lang.String defaultDocletClassName,
                              java.lang.String[] args)

> 프로그램 인터페이스.
> 파라미터:
>   `programName` - 프로그램명 (에러 메세지용).
>   `errWriter` - 에러 메세지를 받아들이는 PrintWriter.
>   `warnWriter` - 에러 메세지를 받아들이는 PrintWriter.
>   `noticeWriter` - 에러 메세지를 받아들이는 PrintWriter.
>   `defaultDocletClassName` - 완전 수식 클래스명.
>   `args` - 커멘드행 파라미터.
> 반환값:
>   return code.

례

Java SE 의 클래스 패스를 `lib/tools.jar` 로 설정해, 각 옵션과 인수를 다른 캐릭터 라인으로서 건네줍니다.

`com.sun.tools.javadoc.Main.execute(new String[] {"-d", "docs", "-sourcepath", "/home/usr/src", "p1", "p2"});`

## 표준 도크 렛의 소스

표준 도크 렛의 원시 코드는 Java SE 의 일부로서 다음의 URL 로 다운로드할 수 있습니다.

- Java SE 원시 코드의 릴리스
  (주: JDK 가 입수 가능하게 되고 나서 원시 코드의 릴리스가 입수 가능하게 되기까지 시간의 차이가 있습니다).

원시 파일은,`src/share/classes/com/sun/tools/doclets` 디렉토리에 있습니다.

Copyright © 1995-2004 Sun Microsystems, Inc. All Rights Reserved. |