Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/grimmjo/jaxrs-analyzer-gradle-plugin

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

asciidoc gradle-plugin groovy jaxrs swagger

Last synced: 3 months ago
JSON representation

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

Awesome Lists containing this project

README

        

= 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. ;-)