[ http://jira.codehaus.org/browse/MNG-2704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=129193#action_129193 ]
Barrie Treloar commented on MNG-2704: ------------------------------------- Note the version range in org.eclipse.core.runtime/META-INF/MANIFEST.MF for org.eclipse.equinox.common;bundle-version="[3.2.0,4.0.0)" {noformat:title=org.eclipse.core.runtime/META-INF/MANIFEST.MF} Manifest-Version: 1.0 Bundle-Name: %pluginName Bundle-Activator: org.eclipse.core.internal.runtime.PlatformActivator Bundle-RequiredExecutionEnvironment: CDC-1.0/Foundation-1.0,J2SE-1.3 Bundle-Vendor: %providerName Bundle-ManifestVersion: 2 Bundle-Localization: plugin Bundle-SymbolicName: org.eclipse.core.runtime; singleton:=true Require-Bundle: org.eclipse.osgi;bundle-version="[3.2.0,4.0.0)";visibi lity:=reexport,org.eclipse.equinox.common;bundle-version="[3.2.0,4.0. 0)";visibility:=reexport,org.eclipse.core.jobs;bundle-version="[3.2.0 ,4.0.0)";visibility:=reexport,org.eclipse.equinox.registry;bundle-ver sion="[3.2.0,4.0.0)";visibility:=reexport,org.eclipse.equinox.prefere nces;bundle-version="[3.2.0,4.0.0)";visibility:=reexport,org.eclipse. core.contenttype;bundle-version="[3.2.0,4.0.0)";visibility:=reexport, org.eclipse.core.runtime.compatibility.auth;bundle-version="[3.2.0,4. 0.0)";resolution:=optional Export-Package: org.eclipse.core.internal.preferences.legacy;x-interna l:=true,org.eclipse.core.internal.runtime;x-friends:="org.eclipse.cor e.runtime.compatibility",org.eclipse.core.runtime Bundle-Version: 3.2.0.v20060603 Eclipse-LazyStart: true {noformat} {code:xml|title="org.eclipse.core:runtime:3.2.0-v20060603 pom.xml"} <?xml version="1.0" encoding="UTF-8"?><project> <modelVersion>4.0.0</modelVersion> <groupId>org.eclipse.core</groupId> <artifactId>runtime</artifactId> <name>Core Runtime</name> <version>3.2.0-v20060603</version> <licenses> <license> <name>Eclipse Public License - v 1.0</name> <url>http://www.eclipse.org/org/documents/epl-v10.html</url> </license> </licenses> <dependencies> <dependency> <groupId>org.eclipse</groupId> <artifactId>osgi</artifactId> <version>[3.2.0,4.0.0)</version> </dependency> <dependency> <groupId>org.eclipse.equinox</groupId> <artifactId>common</artifactId> <version>[3.2.0,4.0.0)</version> </dependency> <dependency> <groupId>org.eclipse.core</groupId> <artifactId>jobs</artifactId> <version>[3.2.0,4.0.0)</version> </dependency> <dependency> <groupId>org.eclipse.equinox</groupId> <artifactId>registry</artifactId> <version>[3.2.0,4.0.0)</version> </dependency> <dependency> <groupId>org.eclipse.equinox</groupId> <artifactId>preferences</artifactId> <version>[3.2.0,4.0.0)</version> </dependency> <dependency> <groupId>org.eclipse.core</groupId> <artifactId>contenttype</artifactId> <version>[3.2.0,4.0.0)</version> </dependency> <dependency> <groupId>org.eclipse.core.runtime.compatibility</groupId> <artifactId>auth</artifactId> <version>[3.2.0,4.0.0)</version> <optional>true</optional> </dependency> </dependencies> </project> {code} Now when you use maven-eclipse-plugin:to-maven:2.5 to seed you local internal repository it will by default use the qualifiers. I am using Eclipse 3.2.2 so this is the jar in the plugins directory: org.eclipse.equinox.common_3.2.0.v20060603.jar which gets installed into the internal repository as: {code:xml} <dependency> <groupId>org.eclipse.equinox</groupId> <artifactId>common</artifactId> <version>3.2.0-v20060603</version> <scope>provided</scope> </dependency> {code} As per http://docs.codehaus.org/display/MAVEN/Dependency+Mediation+and+Conflict+Resolution [3.2.0,4.0.0) is compared against 3.2.0-v20060603 See the point "if qualifier does not exist, it is newer than if it does" As 3.2.0 does not have a qualified it must be newer than 3.2.0-v20060603 and therefore Maven fails to resolve the artifact. > Range check don't work correct > ------------------------------ > > Key: MNG-2704 > URL: http://jira.codehaus.org/browse/MNG-2704 > Project: Maven 2 > Issue Type: Bug > Components: Dependencies > Affects Versions: 2.0.4 > Environment: OS: Windows XP > Java: jdk1.5.0_10 > Reporter: Stephan Zehrer > Priority: Minor > Fix For: Reviewed Pending Version Assignment > > Attachments: demo.zip > > > I included the following part in my pom.xml: > <dependency> > <groupId>org.eclipse.jface</groupId> > <artifactId>org.eclipse.jface</artifactId> > <version>3.2.0</version> > </dependency> > I always get the following error > No versions are present in the repository for the artifact with a range > [3.2.0,4.0.0) > org.eclipse.equinox:org.eclipse.equinox.common:jar:null > But I am sure that version 3.2.0 is available in the repository. > If I define only a dependency on this library like this > <dependency> > <groupId>org.eclipse.equinox</groupId> > <artifactId>org.eclipse.equinox.common</artifactId> > <version>3.2.0</version> > </dependency> > it works! > If I define both it will not work. Why? > According > http://docs.codehaus.org/display/MAVEN/Dependency+Mediation+and+Conflict+Resolution > It could be forced by this > My current workaround is the exclusion definition. > What did I wrong or is this a bug? > See the demo I Attached, you need the Eclipse repository. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira