如何设置TLDDoc来为JSP TagLibs创建文档?

时间:2011-05-02 22:48:06

标签: jsp installation taglib

我工作的公司目前在多个项目中有几个taglib。我们使用maven和hudson。我的任务是找到一些可以用来为我们的taglib自动生成文档的东西。我找到了TLDDoc,但我找不到任何解释如何设置它的内容。请注意,我不是Java开发人员,我是一个在JSP和其他技术之间工作的UI开发人员。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

我有一些类似的要求。我所做的是在maven文件中使用Ant脚本,它会找到我需要的项目下的所有TLD定义文件,并循环遍历每个文件并执行某些操作。

我需要2个输出。 HTML和DITA(技术文档格式,DOCBOOK的继承者)。

  1. 对于每个TLD,将调用TLDDoc并将其输出到相同的输出目录。
  2. 一个额外的脚本执行了一个XSLT样式表,它将TLD xml转换为DITA。从DITA我使用“DITA Open Toolkit”输出到PDF和另一种类型的HTML。
  3. 使用maven,您需要学习一些ANT脚本,并知道如何调用java类(TLDDOC)或XSLT引擎。

    非常酷,非常灵活。

答案 1 :(得分:0)

如果你想将TLDDoc作为maven插件执行,你可以这样做,例如像这样:

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <executions>
                <execution>
                    <id>generateTldDoc</id>
                    <phase>prepare-package</phase>
                    <goals>
                        <goal>java</goal>
                    </goals>
                    <configuration>
                        <includePluginDependencies>true</includePluginDependencies>
                        <includeProjectDependencies>false</includeProjectDependencies>
                        <mainClass>com.sun.tlddoc.TLDDoc</mainClass>
                        <arguments>                  
                            <argument>-doctitle</argument>
                            <argument>Whatever Taglib</argument>
                            <argument>-windowtitle</argument>
                            <argument>Whatever Taglib</argument>   
                            <argument>-d</argument>
                            <argument>${project.build.directory}/tlddoc</argument>
                            <argument>src/main/resources/META-INF/something.tld</argument>
                            <argument>src/main/resources/META-INF/somethingelse.tld</argument>
                        </arguments>
                    </configuration>
                </execution>
            </executions>
            <dependencies>
                <dependency>
                    <groupId>taglibrarydoc</groupId>
                    <artifactId>tlddoc</artifactId>
                    <version>1.3</version>
                </dependency>
            </dependencies>
        </plugin>