Maven Plugin support

Shared utilities for plugins. Handles aggregate reporting, xslt transforms, graphing, etc

License

License

Categories

Categories

Maven Build Tools
GroupId

GroupId

com.tacitknowledge.maven.plugins
ArtifactId

ArtifactId

maven-plugin-support
Last Version

Last Version

1.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

Maven Plugin support
Shared utilities for plugins. Handles aggregate reporting, xslt transforms, graphing, etc
Project Organization

Project Organization

Tacit Knowledge
Source Code Management

Source Code Management

https://github.com/tacitknowledge/maven-plugin-support

Download maven-plugin-support

How to add to project

<!-- https://jarcasting.com/artifacts/com.tacitknowledge.maven.plugins/maven-plugin-support/ -->
<dependency>
    <groupId>com.tacitknowledge.maven.plugins</groupId>
    <artifactId>maven-plugin-support</artifactId>
    <version>1.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.tacitknowledge.maven.plugins/maven-plugin-support/
implementation 'com.tacitknowledge.maven.plugins:maven-plugin-support:1.0.1'
// https://jarcasting.com/artifacts/com.tacitknowledge.maven.plugins/maven-plugin-support/
implementation ("com.tacitknowledge.maven.plugins:maven-plugin-support:1.0.1")
'com.tacitknowledge.maven.plugins:maven-plugin-support:jar:1.0.1'
<dependency org="com.tacitknowledge.maven.plugins" name="maven-plugin-support" rev="1.0.1">
  <artifact name="maven-plugin-support" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.tacitknowledge.maven.plugins', module='maven-plugin-support', version='1.0.1')
)
libraryDependencies += "com.tacitknowledge.maven.plugins" % "maven-plugin-support" % "1.0.1"
[com.tacitknowledge.maven.plugins/maven-plugin-support "1.0.1"]

Dependencies

compile (7)

Group / Artifact Type Version
com.thoughtworks.xstream : xstream jar 1.4.3
org.codehaus.plexus : plexus-utils jar 3.0.4
ant : ant-junit jar 1.6.5
ant : ant jar 1.7.0
org.apache.maven : maven-plugin-api jar 3.0.4
org.apache.maven : maven-project jar 2.2.1
org.apache.maven : maven-artifact jar 2.2.1

test (3)

Group / Artifact Type Version
junit : junit jar 4.10
org.mockito : mockito-all jar 1.9.0
org.hamcrest : hamcrest-all jar 1.3

Project Modules

There are no modules declared in this project.

Maven Plugin Support

Common classes for handling:

  1. plugin aggregate report dashboard
  2. threshold checks
  3. xsl processing and html report formatting
  4. GraphViz integration

Usage

Sample usage for adding a plugin report to the plugin dashboard. Evaluates thresholds on code coverage and adds its data to the report dashboard.

try {
    coverageError = parseOutputFileForErrors(new File(emmaReportsDirectory,"emma.txt"));
    if (coverageError)
	getLog().error("Coverage did not meet:" + assembleMetrics());
} catch (IOException e) {
    throw new MojoExecutionException(e.getMessage(),e);
}

ReportSummary emmaSummary = new ReportSummary(new File(indexReportsDirectory,"index.xml"),
				       "Emma Code Coverage Report",
				       "emma/emma.html",
				       "emma",
				       true,
				       "Emma Code Coverage Report",
				       true,
				       ReportSummary.QUALITY);
emmaSummary.setPassed(!coverageError);
AggregateReportHandler handler = new AggregateReportHandlerImpl();
handler.handleReport(emmaSummary);

Dependencies

  • Ant - TODO: Replace with a new xslt approach that does not require ant
com.tacitknowledge.maven.plugins

Tacit Knowledge

Versions

Version
1.0.1