3

我想使用Doxia生成一些文档,但使用 Ant 调用它(不,Maven 不是一个选项)。我一直在寻找一些指针,但经过几次谷歌搜索后什么都没有弹出。

是否有人已经在 Ant 环境中使用过 Doxia,结果如何?

4

1 回答 1

3

我不知道任何 Ant Doxia 任务,使用 Maven 或从 Ant 构建中调用Mvn ant 任务来调用 Doxia 确实会更简单......

如果这真的不可行,那么拼凑一个自定义的 ant 任务来调用 Doxia 应该是相当简单的。

根据要求,一些入门指南:

Maven 基于Plexus,Doxia 组件可从 Plexus 容器用于应用程序。
有一个关于Plexus 入门的教程,您可能会发现对创建包装器的一些背景很有帮助。

下面的示例显示了如何在独立应用程序中获取SiteTools组件。就像上面提到的 Ant 教程一样,将执行包装在 Ant 任务中会很简单。

public class DoxiaPlexusTest
{
    public static void main( String[] args )
        throws Exception {
        // create a new container
        PlexusContainer container = new DefaultPlexusContainer();

        SiteTool siteTool = container.lookup( SiteTool.class );

        try {
            new DoxiaPlexusTest().letsDoDoxia(siteTool);
        finally {
            // stop the components and container
            container.dispose();
        }
    }

    public void letsDoDoxia(SiteTool siteTool) {
        List localesList = siteTool.getAvailableLocales( locales );
        String relativePath = siteTool.getRelativePath( "C:/foo/child",
                            "C:/foo/master" );
        ...
    }
}
于 2009-10-09T18:35:24.837 回答