首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用AsciiDoclet从.java文件中的javadoc注释生成asciidoc文件

如何使用AsciiDoclet从.java文件中的javadoc注释生成asciidoc文件
EN

Stack Overflow用户
提问于 2015-01-27 10:14:47
回答 1查看 3.4K关注 0票数 5

我是从未有过的新手。我希望从java文件中注释的javadoc ( asciidoc格式)生成HTML文档。

例如java文件

代码语言:javascript
运行
复制
/**
 * = Asciidoclet
 *
 * Sample comments that include `source code`.
 *
 * [source,java]
 * --
 * public class Asciidoclet extends Doclet {
 *     private final Asciidoctor asciidoctor = Asciidoctor.Factory.create();
 *
 *     @SuppressWarnings("UnusedDeclaration")
 *     public static boolean start(RootDoc rootDoc) {
 *         new Asciidoclet().render(rootDoc);
 *         return Standard.start(rootDoc);
 *     }
 * }
 * --
 *
 * @author https://github.com/johncarl81[John Ericksen]
 */
public class Asciidoclet extends Doclet {
}

我可以从.ad文件生成html文件,但我不知道如何从javadoc生成.ad(或任何asciidoc格式文件)。

所以我想要生成.ad (asciidoc文件),我使用asciidoctor plugin生成html文档。asciidoctor-maven-plugin将检查sourceDirectory中的sourceDirectory文件,并在outputDirectory中生成html文件。

代码语言:javascript
运行
复制
</plugin>
<plugin>
    <groupId>org.asciidoctor</groupId>
    <artifactId>asciidoctor-maven-plugin</artifactId>
    <version>${asciidoctor.version}</version>
    <executions>
        <execution>
            <id>output-html</id>
            <phase>generate-resources</phase>
            <goals>
                <goal>process-asciidoc</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <sourceDirectory>asciidocs</sourceDirectory>
        <outputDirectory>asciidocs-output</outputDirectory>
        <backend>html</backend>
        <doctype>book</doctype>
    </configuration>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9</version>
    <configuration>
        <source>1.7</source>
        <doclet>org.asciidoctor.Asciidoclet</doclet>
        <docletArtifact>
            <groupId>org.asciidoctor</groupId>
            <artifactId>asciidoclet</artifactId>
            <version>${asciidoclet.version}</version>
        </docletArtifact>
        <overview>src/main/java/overview.adoc</overview>
        <additionalparam>
            --base-dir ${project.basedir}
            --attribute "name=${project.name}"
            --attribute "version=${project.version}"
            --attribute "title-link=http://example.com[${project.name} ${project.version}]"
        </additionalparam>
    </configuration>
</plugin>

依赖性

代码语言:javascript
运行
复制
<asciidoclet.version>1.5.0</asciidoclet.version>
<asciidoctor.version>1.5.0</asciidoctor.version>

<dependency>
    <groupId>org.asciidoctor</groupId>
    <artifactId>asciidoctorj</artifactId>
    <version>1.5.2</version>
</dependency>

我回复了冬虫夏草,但是我无法获得任何有用的信息。此外,所有示例项目都用于生成html、pdf、epub等。

谢谢..。

更新

我更改了maven-javadoc插件的配置,如下所示,并执行了mvn org.apache.maven.plugins:maven-javadoc-plugin:2.9:jar,但是它生成普通的html java文档,它应该生成.adoc文件。有人能帮我做错事吗?

谢谢..。

代码语言:javascript
运行
复制
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9</version>
    <executions>
        <execution>
            <id>javadoc-jar</id>
            <phase>package</phase>
            <goals>
                <goal>jar</goal>
            </goals>
            <configuration>
                <includeDependencySources>true</includeDependencySources>
                <dependencySourceExcludes>
                    <dependencySourceExclude>commons-cli:*</dependencySourceExclude>
                </dependencySourceExcludes>
                <source>1.7</source>
                <doclet>org.asciidoctor.Asciidoclet</doclet>
                <docletArtifact>
                    <groupId>org.asciidoctor</groupId>
                    <artifactId>asciidoclet</artifactId>
                    <version>${asciidoclet.version}</version>
                </docletArtifact>
                <overview>src/main/java/overview.adoc</overview>
                <additionalparam>
                    --base-dir ${project.basedir}
                    --attribute "name=${project.name}"
                    --attribute "version=${project.version}"
                    --attribute "title-link=http://example.com[${project.name} ${project.version}]"
                </additionalparam>
            </configuration>
        </execution>
    </executions>
</plugin>

我使用以下依赖项。

EN

回答 1

Stack Overflow用户

发布于 2015-01-28 18:43:41

看来你对Asciidoclet所做的事情的看法有点偏颇。它不是为创建Asciidoc而设计的,而是设计成能够将javadoc写入Asciidoc中,然后将其转换为javadoc命令的html输出。

您可能需要考虑的是为asciidoctor构建一个自定义包含模块,该模块将获取asciidoc javadoc源,去掉java注释并将其包含到您正在创建的其他输出中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28167943

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档