Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time



  1. Export JSON (with HTML inside) from Confluence via REST-API, e.g. curl -u user:password curl -u user:password

  2. Convert the JSON/HTML to Markdown

  3. Convert Markdown to .docx with Pandoc (you need to install pandoc on your machine, see "Links")

  4. Include the .docx file into a customer-specific parent-document (multi-file doc with title page etc).

==> automate the steps (e.g. as Jenkins job)


   java Confluence2MD -m wiki <pageId>  > [outputfile]
   java Confluence2MD -m file <nput file>  > [outputfile]
   java Confluence2MD -m url  <input URL>   > [outputfile]

-m wiki|file|url specify input format/processing mode (default: wiki)
-o file specify output format, charset=UTF-8  (default: stdout, charset=file.encoding of plaform)
-oa file specify output format, charset=UTF-8 - open for append!
-v true for verbose output       (default: false)
-u user:password to use HTTP-Basic-Auth to request the URL (default: no auth)
-depth -1..n the depth to follow down the child-pages hierarchy. -1=infinte, 0=no children (default: -1)
-server URL of confluence server. used in wiki-mode (default:
-plantuml  turn off integrated run of PlantUML to render diagrams (default is to call PlantUML automatically)
-a download folder for attachments (default: attachments)
last parameter: the file to read n (-f file) or the URL to get (-f url) or the pageId to start with (-f wiki)
+H true/false true: document hierarchy used to generate page header format type (child document => h2 etc) (default: true)
+T true/false true: title transformation ON (cut everything before first -) (default: true)
+RootPageTitle true/false true: generate header for root page, false: omit header of root page (default: true)
+gfm true/false: generate GitHub Flavored Markdown (default: false) 


java -jar target/confluence2md-fat.jar Confluence2MD -o -u myUser:myPassword

java -jar target/confluence2md-fat.jar Confluence2MD +T true +H true +RootPageTitle false -o -u myUser:myPassword

Extension: PlantUML

If you have a Confluence with PlantUML-Macro installed, you can write and see the UML diagrams in confluence. If you do not have the PlantUML-Macro, you can still write UML diagrams in confluence and let them render by confluence2md:

Create a Code-Block with title = "PlantUML" and insert you plantUml-code as the body, e.g.

frame "Load Balancer" {
[Load Balancer]
frame "Web Server Node 1" {
    [Apache 1]
    [Load Balancer] --> [Apache 1]
frame "App Server Node 1" {
    [Apache 1] --> [Tomcat 1]
    [ActiveMQ 1] <- [Tomcat 1]

Confluence2MD will render the text in the same way as it was created with the PlantUML-Macro. You can give the diagram an image title by chosing a title for the Code-Block that either starts with "PlantUML: " or "PlantUML - " where the part after this prefix is the image title:

  • "PlantUML - My Picture" will result in an image with title "My Picture"



Render PlantUml specs in pages and replace/add images as attachment for them. (To update pages when Confluence has no PlantUml plugin installed).


java -jar target/confluence2md-fat.jar Uml2Confluence -u myUser:myPassword

maven way to deploy to OSSRH and release them to the Central Repository


If your version is a release version: mvn clean deploy

(With the property autoReleaseAfterClose set to false) Trigger a release of the staging repository with: mvn nexus-staging:release

If something went wrong you can drop the staging repository with: mvn nexus-staging:drop

Perform a release deployment to OSSRH with: mvn release:clean release:prepare mvn release:perform


No description, website, or topics provided.




No packages published