Search code examples
dockerasciidocasciidoctorplantuml

asciidoctor: FAILED: 'asciidoctor-plantuml' could not be loaded


In my docker container, running asciidoctor -r asciidoctor-plantuml my_doc.adoc gets me asciidoctor: FAILED: 'asciidoctor-plantuml' could not be loaded. To reproduce the issue:

$ docker run -it -v $WHERE_ADOCS:/documents/ asciidoctor/docker-asciidoctor
77687352778d:/documents# asciidoctor -r asciidoctor-plantuml --trace my_doc.adoc
    from <internal:/usr/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.1.0/gems/asciidoctor-2.0.18/lib/asciidoctor/cli/options.rb:281:in `block in parse!'
    from /usr/lib/ruby/gems/3.1.0/gems/asciidoctor-2.0.18/lib/asciidoctor/cli/options.rb:279:in `each'
    from /usr/lib/ruby/gems/3.1.0/gems/asciidoctor-2.0.18/lib/asciidoctor/cli/options.rb:279:in `parse!'
    from /usr/lib/ruby/gems/3.1.0/gems/asciidoctor-2.0.18/lib/asciidoctor/cli/options.rb:34:in `parse!'
    from /usr/lib/ruby/gems/3.1.0/gems/asciidoctor-2.0.18/lib/asciidoctor/cli/invoker.rb:24:in `initialize'
    from /usr/lib/ruby/gems/3.1.0/gems/asciidoctor-2.0.18/bin/asciidoctor:13:in `new'
    from /usr/lib/ruby/gems/3.1.0/gems/asciidoctor-2.0.18/bin/asciidoctor:13:in `<top (required)>'
    from /usr/bin/asciidoctor:25:in `load'
    from /usr/bin/asciidoctor:25:in `<main>'```

with the result like above. I've been following this README of plantuml extention for asciidoctor. Do I need to start the plantuml-server for generating the .html?

11:34 $ docker images
REPOSITORY                       TAG       IMAGE ID       CREATED        SIZE
plantuml/plantuml-server         jetty     92b40d953f4e   3 weeks ago    410MB
asciidoctor/docker-asciidoctor   latest    dc8b75bfd089   4 weeks ago    685MB

so both images exists in my local. Is there anything I miss? Any hint is appreciated....


Solution

  • Instead of using asciidoctor-plantuml, asciidoctor-diagram works flawless:

    77687352778d:/documents# asciidoctor -r asciidoctor-diagram my_doc.adoc
    

    with the expected my_doc.html with the embedded plantuml being generated.