trautonen / coveralls-maven-plugin

Maven plugin for submitting Java code coverage reports to Coveralls web service.
MIT License
312 stars 123 forks source link

Version 3.2.0 do not work with Java 6 #87

Closed andrioli closed 8 years ago

andrioli commented 8 years ago

Probably is better update the README. Currently, release 3.2.0 do not work with Java 6.

Exception message during coveralls:report: Execution default-cli of goal org.eluder.coveralls:coveralls-maven-plugin:3.2.0:report failed: An API incompatibility was encountered while executing org.eluder.coveralls:coveralls-maven-plugin:3.2.0:report: java.lang.UnsupportedClassVersionError: org/eclipse/jgit/lib/AnyObjectId : Unsupported major.minor version 51.0

trautonen commented 8 years ago

Great... I've missed that JGit requires Java 7. Can't seem to find proper changelog from the project to identify which is the last version that works with Java 6.

If you need to run with Java 6, you could try to force Maven to use older version of JGit in the plugin's dependency configuration section.

andrioli commented 8 years ago

@trautonen, I followed your suggestions and works fine.

<plugin>
    <groupId>org.eluder.coveralls</groupId>
    <artifactId>coveralls-maven-plugin</artifactId>
    <version>3.2.0</version>
    <dependencies>
        <!--
            Override JGit version. Unfortunately the plug-in uses 
            version 4.0.1 that is not compatible with Java 6
         -->
        <dependency>
            <groupId>org.eclipse.jgit</groupId>
            <artifactId>org.eclipse.jgit</artifactId>
            <version>3.7.1.201504261725-r</version>
        </dependency>
    </dependencies>
</plugin>

In JGit version 4.0.0 they changed the minimum required Java version to Java 7 (see Bug 458475)

Apparently, using JGit 3.7.1, do not break the API you are using (at least not noticed at my runtime) :smile:

trautonen commented 8 years ago

Created hotfix version 3.2.1 which downgrades the jgit version. You can switch to that version to get rid of the explicit dependency in pom.xml.

andrioli commented 8 years ago

Works fine :+1: