The project I'm working on is an Eclipse product built as a set of dependent Eclipse plugins, and the code runs fine when not instrumented. As soon as I switch on Clover capabilities, I find that I can no longer run my Eclipse product. I always get the following error:
[CLOVER] FATAL ERROR: Clover could not be initialised. Are you sure you have Clover in the runtime classpath? (class java.lang.NoClassDefFoundError:com_cenqua_clover/CloverVersionInfo)
I'm guessing that this is a problem with Eclipse's non-standard class loader, such that the Clover initialization is happening on the wrong class loader somehow.
Is this a known limitation of the Clover plugin, or should I expect this to work? What other information can I provide to help debug this (I've attached the log file)?
If you are running or testing plug-ins instrumented by Clover you will need to add the plugin com.cenqua.clover.core to your plugin dependencies so that the clover runtime classes are visible to it when it executes. I realise this may not be ideal especially in your case as you may have a large number of plugins requiring this treatment and you probably don't want to have to add or remove the dependency each time you release. We hope to have a better solution in place for this but I doubt this will be before the full 2.0 release.
I'm keen to see if I can provide you with some workaround or way ahead with your particular circumstances. Could you tell me how you launch and unit test your application (ie which type of launch configs do you use).