jaxrs-analyzer-gradle-plugin

Gradle plugin for the https://github.com/sdaschner/jaxrs-analyzer [JAX-RS Analyzer].

APACHE-2.0 License

Stars
6

= JAX-RS Analyzer Gradle Plugin

Gradle plugin for the https://github.com/sdaschner/jaxrs-analyzer[JAX-RS Analyzer].

Using the plugin:


plugins { id("io.github.grimmjo.jaxrs-analyzer") version "0.4" }


After building your project, the documentation resides under 'build/jaxrs-analyzer/'.

== Changelog

=== Version 0.4

IMPORTANT: The plugin id changed from com.github.grimmjo to io.github.grimmjo.jaxrs-analyzer

  • update to gradle 8
  • migrates the plugin to kotlin
  • support all main source sets

=== Version 0.3

  • updates jax-rs-analyzer dependency to 0.17
  • updates gradle to 4.10.2

=== Version 0.2

  • adds gradle's cache support to analyze task
  • generate documentation for multiple backends
  • updates jax-rs-analyzer dependency to 0.16
  • adds a example build

== Roadmap

=== Version 0.4

  • support groovy and kotlin classes for analysis

== Full Example

A full working example can be found https://github.com/grimmjo/jaxrs-analyzer-gradle-plugin-samples[here]

== Configuration


jaxRsAnalyzer {
// Available backends are plaintext, asciidoc and swagger (default)
backend 'swagger', 'asciidoc'
// Domain of the deployed project, defaults to ""
domain 'localhost:8080'
// Comma separated list of Swagger schemes (only for if backend is swagger, defaults to http)
schemes 'http', 'https'
// Enables rendering of Swagger tags (defaults to false -> default tag will be used)
renderTags true
// The number at which path position the Swagger tags will be extracted (defaults to 0)
tagPathOffset 0
// Directory (relative to buildDir) where resources will be generated (defaults to jaxrs-analyzer)
outputDirectory 'jaxrs-analyzer'
}

=== Output directory

The outputDirectory parameter defines the relative path to the build directory.

=== Backend The backend parameter specifies the output format of the analysis. The available formats are plaintext, asciidoc and swagger. Multiple values are allowed. E.g. jaxRsAnalyzer { // Available backends are plaintext (default), swagger and asciidoc backend 'swagger', 'asciidoc' ... } This would generate the documentation for swagger and asciidoc.

For further use of the created formats see the https://github.com/sdaschner/jaxrs-analyzer/blob/master/Documentation.adoc[JAX-RS Analyzer documentation].

=== Domain With domain the user may specify the URL which will contain the REST API later on. Tools like Swagger make use of this information (and offer possibilities to send calls directly, etc.).

=== Swagger options

  • schemes The comma separated list of Swagger schemes: http (default), https, ws, wss
  • renderTags Enables rendering of Swagger tags (defaults to false, then the default tag will be used)
  • tagPathOffset The number at which path position the Swagger tags will be extracted (defaults to 0)

== Contributing Feedback, bug reports and ideas for improvement are very welcome! Feel free to fork, comment, file an issue, etc. ;-)