Eclipse RCP+Spring+EMF+Teneo – hibernate and plugin versions
Ran into a bit of trouble the other day using teneo. A particular plugin, org.eclipse.emf.teneo.hibernate.libraries is a provider of the hibernate libraries. However in my application, I have defined a target plug-in profile that also includes the springsource osgi hibernate bundles. Hence, I kept getting a bundle “uses” error.
By creating an OSGi launch profile and launching just the OSGi prompt (add –console to the argument list in the launch profile), I discovered that these two plugins were both trying to provide hibernate classes but specified at different levels. The uses clause error detected that I could have a potential conflict and signalled an error that bundles dependent on hibernate could not be resolved. This is a good thing for detecting errors. The bad thing is that I then worked to eliminate the plugin uses clause and went down a path of trying to find the right set of versioned plugins that satisfied all dependencies. That can be hard work but I was happy that it occurred prior to running the application where a runtime error could have taken awhile to figure out. I wish, however, that there were better visual tools to help trace through bundle dependencies.