Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/davidecavestro/gradle-jxr-plugin

A Gradle plugin that uses Maven JXR to produce cross-reference for project's sources.
https://github.com/davidecavestro/gradle-jxr-plugin

Last synced: 16 days ago
JSON representation

A Gradle plugin that uses Maven JXR to produce cross-reference for project's sources.

Awesome Lists containing this project

README

        

:toc:

== Gradle JXR plugin
image:https://travis-ci.org/davidecavestro/gradle-jxr-plugin.png?branch=master["Build Status", link="https://travis-ci.org/davidecavestro/gradle-jxr-plugin"]

== Compatibility

Please note the plugin has been slightly adapted to support Gradle 3.
Moreover from version 0.2.x the published artifacts have also moved from jcenter to the new https://plugins.gradle.org/plugin/net.davidecavestro.gradle.jxr[Gradle Plugin Portal].

.Gradle compatibility
[width="40%",frame="topbot",options="header"]
|==============================
|Gradle version |Plugin version
|>= 3.x |0.2.x
|<= 2.x |0.1.x
|==============================

== Installation

Apply the plugin in a java project as follows

=== Gradle 3+
----
plugins {
id "net.davidecavestro.gradle.jxr" version "0.2.1"
}
----

=== Gradle up to 2.x
----
buildscript {
repositories {
mavenRepo name: 'Bintray', url: 'http://jcenter.bintray.com'
mavenCentral()
}

dependencies {
classpath 'net.davidecavestro:gradle-jxr-plugin:0.1.1'
}
}

apply plugin: 'java'
apply plugin: 'jxr'
----

== Usage

Once installed the plugin provides the additional task +jxr+. It produces per-project html crossreference files for your java sources at path _build/jxr_.

== License

The gradle JXR plugin is licensed under the http://www.apache.org/licenses/LICENSE-2.0[Apache License, Version 2.0].

== Alternatives

The https://github.com/mattbertolini/JXR-Ant[JXR-Ant] project provides an ANT task with some https://github.com/mattbertolini/JXR-Ant#gradle[examples] for using it within a gradle project.

== Credits

Many thanks to:

* The http://gradle.org/[Gradle project]
* The http://maven.apache.org/[Maven project]
* The https://github.com/asciidoctor/asciidoctor-gradle-plugin[asciidoctor-gradle-plugin] (I learned very much from their code).
* Baron Roberts for adding support to Gradle 3

== TODO

* find a way to fix https://jira.codehaus.org/browse/JXR-100[missing cross references] when using whitespaces before or after method/constructor declaration.
* add support for http://maven.apache.org/plugins/maven-jxr-plugin/examples/aggregate.html[aggregating references]
* add support for multiproject builds
* add support for http://maven.apache.org/plugins/maven-jxr-plugin/examples/linkjavadoc.html[linking javadoc]
* add support for https://jira.codehaus.org/browse/JXR-101[generating xrefs for groovy sources]
* add configuration hooks for JXR configuration, namely: input/output encoding, source dirs, output dir
* documentation

== Release Notes

=== v0.2.1
* Added support to Gradle 3

=== v0.2.0
* BROKEN do not use it

=== v0.1.1

* Added sources jar to published artifacts (in order to be published at http://jcenter.bintray.com).

=== v0.1
* Initial release. Very rough support in place.