Skip to content

A Maven plugin that uses Asciidoctor via JRuby to process AsciiDoc source files within the project.

License

Notifications You must be signed in to change notification settings

asciidoctor/asciidoctor-maven-plugin

Repository files navigation

Asciidoctor Maven Tools (Plugin & Site Integration)

Build Status Coverage Status Maven Central project chat

The Asciidoctor Maven Plugin is the official way to convert your AsciiDoc documentation using Asciidoctor from an Apache Maven build.

The conversion can happen in 2 flavors:

  1. as a Maven plugin: AsciiDoc files are converted at full Asciidoctor power independently from Maven site,

  2. as a Maven site integration: AsciiDoc files are integrated with Maven reports, which comes with a few limitations (see below for details).

Full documentations is available in the USER MANUAL, if you have questions, please drop them at the PROJECT CHAT.

Translations of the document are available in the following languages:
📎

You’re viewing the documentation for the upcoming release. If you’re looking for the documentation for a stable release, please refer to one of the following tags:

+ 3.1.03.0.02.2.6

Quickstart

These are the minimal steps to convert your AsciiDoc documents to HTML with the asciidoctor-maven-plugin.

  1. Place your AsciiDoc sources in src/docs/asciidoc.

  2. Add the minimal configuration to your pom.xml.

    <plugin>
        <groupId>org.asciidoctor</groupId>
        <artifactId>asciidoctor-maven-plugin</artifactId>
        <version>3.1.0</version>
        <executions>
            <execution>
                <id>asciidoc-to-html</id>
                <phase>generate-resources</phase>
                <goals>
                    <goal>process-asciidoc</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
  3. Run the plugin’s associated phase.

    $ mvn generate-resources

If you want to generate your Maven site with Asciidoctor

  1. Place your AsciiDoc sources in src/site/asciidoc.

  2. Add the minimal configuration to your pom.xml.

    Maven site integration
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.21.0</version>
                <dependencies>
                    <dependency>
                        <groupId>org.asciidoctor</groupId>
                        <artifactId>asciidoctor-parser-doxia-module</artifactId>
                        <version>3.1.0</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>
  3. Run the plugin’s associated phase.

    $ mvn site:site

Examples

You can find examples ready to copy-paste in the Asciidoctor Maven examples project.

Supported version

asciidoctor-maven-plugin comes in two versions with support for Maven 3.8.8+ and 3.9.x versions.

  • Version 3.x.x: current development branch. This is the recommended version, new features and fixes will be added as minor/patch releases.

  • Version 2.2.x: maintenance branch. Fixes will be released as patch versions up until 31st January 2025.

Contributing

This plugin is an open source project made possible with the help of users and enthusiasts. To continue to be useful and to evolve, this plugin needs continuing contributions. There are multiple ways where you can help:

  • join the discussions

  • give feedback on ideas

  • report issue

  • test new releases

  • contribute source code to fix issues or add new functionality

  • write documentation

The Contributor Guide will help you start with the code.

Copyright © 2013-2024 Jason Porter, Dan Allen, Abel Salgado Romero and the individual contributors. Use of this software is granted under the terms of the Apache License, Version 2.0.

See the LICENSE for the full license text.

About

A Maven plugin that uses Asciidoctor via JRuby to process AsciiDoc source files within the project.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages