Upgrading libraries in compiled binaries
Clover is using a number of third party libraries (based mainly on Apache License or LGPL), for example: Commons Lang, JFreeChart, Antlr.
In case when you would like to upgrade these libraries (assuming that they are API-compatible) in existing Clover binaries you have to perform the following steps:
- remove third party library classes from Clover JAR(s) (clover.jar, clover-ant.jar, clover-runtime.jar, com.atlassian.clover.eclipse.core*.jar etc)
- repackage new third party library classes with a 'clover.' prefix (using JarJar tool for instance)
- put repackaged classes into Clover JAR(s)
In order to make it more convenient, Clover is bundled with the upgrade script written in Ant:
- Clover-for-Ant: located in /extlib/upgrade.xml in the clover-ant-X.X.X.zip file
- Clover-for-Eclipse: located in /extlib/upgrade.xml in the com.atlassian.clover.eclipse.updatesite_X.X.XvNNNNNNNNNNNNNN.zip
- Clover-for-IDEA: located in /extlib/upgrade.xml in the clover-idea.jar plugin
- Clover-for-Maven: there are no new third party tools used
Detailed documentation how to use it is written in the scripts.