Question

We have a dependency for a 3rd party library. org.apache.batik.css

We use the Eclipse ORBIT repo, to get 3rd party plugin in a .target configuration file.

The repo contains two versions:

org.apache.batik.css (source) 1.6.0
org.apache.batik.css (source) 1.7.0

When I look in the Eclipse Target View, I can see both versions.

We have a product which has a feature for this plugin. The product complaints the plugin is not available (The check button in the .product editor) to one of the dependents of this plugin.

.product

org.apache (Feature)

org.apache.batik.css

org.eclipse.e4.rcp (Feature)

requires org.apache.batik.css (1.6.0)

How can I force the feature org.apache, holding this plugin to use 1.6.0 ? I have tried to set the version in feature.xml like this, but still it complaints?

(tags ommitted). 

         id="org.apache.batik.css"
         download-size="0"
         install-size="0"
         version="1.6.0.v201011041432"
         unpack="false"

I found a way, by making the selection of the correct plugin in the .target file, but I'd rather force the correct plugin version in a feature.

Thank You,

Was it helpful?

Solution

The problem is that Eclipse interprets a single version as a minimum version. In your case, you need to specify a version range, that only includes that particular version [1.6.0.v201011041432,1.6.0.v201011041432]

Take a look at this blog post, which explains it pretty nicely.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top