Как использовать AsciiDoclet для генерации файла asciidoc из комментариев javadoc в файле.java
Я новичок с Asciidoc. Я хочу сгенерировать документацию HTML из прокомментированного javadoc (в формате asciidoc) в файле java.
например файл Java
/**
* = 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 {
}
Я могу сгенерировать HTML-файл из файла.ad, но я не знаю, как сгенерировать.ad (или любой файл формата asciidoc) из Javadoc.
Поэтому я хочу сгенерировать.ad (файл asciidoc), который я использую для создания HTML-документации с использованием asciidoctor-maven-plugin. asciidoctor-maven-plugin проверит файлы.ad в sourceDirectory и сгенерирует HTML-файл в outputDirectory.
</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>
зависимость
<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>
Я ссылался на asciidoclet, но не могу получить никакой полезной информации. также все примеры проектов предназначены для создания HTML, PDF, EPUB и т. д.
Спасибо...
Обновить
Я изменил свою конфигурацию maven-javadoc-plugin следующим образом и выполнил mvn org.apache.maven.plugins:maven-javadoc-plugin:2.9:jar
но он генерирует нормальные HTML-документы Java, он должен генерировать файл.adoc. Может кто-нибудь помочь мне, что я делаю не так?
Спасибо...
<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>
Я использую следующие зависимости.
1 ответ
Похоже, ваша идея о том, что делает Asciidoclet, немного ошибочна. Он не был предназначен для создания Asciidoc, но был спроектирован так, чтобы иметь возможность писать Javadoc в Asciidoc, который затем транслируется в вывод html команды javadoc.
Что-то, что вы, возможно, захотите изучить, - это создание собственного модуля включения для asciidoctor, который возьмет ваш javadoc-источник asciidoc, уберет комментарии java и включит их в другие создаваемые вами выходные данные.