On 12.11.2013, at 23:53, Marshall Schor <m...@schor.com> wrote: > I did some more checking. > > The org.eclipse.core:runtime version 3.9.0-v20130326-1255 depends on > org.eclipse.equinox:app version 1.0.0 (not [1.0.0])
Right, it uses 1.0.0. > This page: > http://books.sonatype.com/mvnref-book/reference/pom-relationships-sect-project-dependencies.html#pom-relationships-sect-version-ranges > > has a "Note" which says this form of the specification means "allow anything, > but prefer 1.0.0. I would conclude that Maven ought to resolve the app > artifact > in this case? I interpret the note differently: """ When declaring a "normal" version such as 3.8.2 for Junit, internally this is represented as "allow anything, but prefer 3.8.2." This means that when a conflict is detected, Maven is allowed to use the conflict algorithms to choose the best version. """ I read that as "[1.0.0] would not allow the conflict resolution mechanism to choose an alternative". The conflict resolution mechanism chooses the nearest dependency (near in the sense of hops of dependencies between the dependency root and the different transitive inclusions of an artifact with conflicting version numbering). In particular, I don't read it as "try 1.0.0, but in case that is absent try just any version". -- Richard > Did I miss something? > > -Marshall > > > On 11/12/2013 4:17 PM, Richard Eckart de Castilho wrote: >> Thanks for testing. I verified that there is a new version of the runtime >> artifact on Maven Central, and it has a dependency to the app artifact >> which is *not* on Maven Central. >> >> http://search.maven.org/#artifactdetails%7Corg.eclipse.core%7Cruntime%7C3.9.0-v20130326-1255%7Cjar >> >> So unless somebody uploads a newer version of the runtime artifact with >> a fixed dependency or someone uploads an app artifact in version 1.0.0, >> UIMA 2.4.2 cannot be built from source. >> >> As a workaround, you can probably replace the version ranges in the >> dependencies >> on the runtime in the UIMA 2.4.2 POMs with a fixed version 3.3.100-v20070530. >> >> We need to consider how to deal with these version ranges I guess. >> >> -- Richard >> >> On 12.11.2013, at 22:11, Kim Ebert <kim.eb...@perfectsearchcorp.com> wrote: >> >>> Hi Richard, >>> >>> rm -rvf ~/.m2 >>> >>> then >>> >>> mvn compile >>> >>> Same problem still. I was actually clearing the .m2 directory to verify >>> that my cache wasn't causing me any problems on a build. >>> >>> Thanks, >>> >>> Kim Ebert >>> 1.801.669.7342 >>> Perfect Search Corp >>> http://www.perfectsearchcorp.com/ >>> >>> On 11/12/2013 02:05 PM, Richard Eckart de Castilho wrote: >>>> That's what I was expecting. I assume that you have the 3.9.0-xxx version >>>> in >>>> your local .m2 repository, so the version range is resolved to that and >>>> I don't see Maven actively accessing a strange repository in your logs, >>>> so it might just be a remnant of some other project you built earlier. >>>> >>>> Try purging that version from your local .m2 repository (or maybe start >>>> with a new >>>> empty .m2 repository). >>>> >>>> -- Richard >>>> >>>> On 12.11.2013, at 21:46, Kim Ebert <kim.eb...@perfectsearchcorp.com> wrote: >>>> >>>>> It appears for some reason that my version is resolving to >>>>> org.eclipse.core:runtime:jar:3.9.0-v20130326-1255:provided instead of >>>>> org.eclipse.core:runtime:jar:3.3.100-v20070530 >>>>> >>>>> The eclipse dependency is listed as: >>>>> >>>>> <!-- Eclipse dependencies --> >>>>> <dependency> >>>>> <groupId>org.eclipse.core</groupId> >>>>> <artifactId>runtime</artifactId> >>>>> <version>[3.3.0.0,4.0.0)</version> >>>>> <scope>provided</scope> >>>>> </dependency>