On Mon, Apr 28, 2014 at 7:20 AM, Antoine Levy Lambert <anto...@gmx.de>wrote:
> Hi, > > A maven pom file in one of the recursive dependencies of > > "org.geotoolkit.pending" % "geotk-processing-core" % "4.0-M0" > must refer to “org.opengis” “geoapi-pending” ${geoapi.version} > > This recursive dependency could be the following : > http://repo1.maven.org/maven2/org/apache/sis/parent/0.3/parent-0.3.pom > > Is it good process to create an artifact where the published pom contains > a maven property rather than a clearly defined version number ? > > I've heard so from many developers. Usually the property is on a profile, and you can "opt-in" to different universes of libraries via a System.getProperty value. This has led to issues with sbt + hadoop. > You should refer to > http://www.scala-sbt.org/release/docs/Detailed-Topics/Library-Management.htmlto > see what you can do to provide this geoapi.version to the resolution > process. > > I do not see anything obvious, maybe create a variable geoapi.version := > “some.version” in your build.sbt ? > > from this web page http://www.geoapi.org/maven.html I infer that 3.0.0 is > one of the possible values for this version of the org.opengis dependency. > > We expose a `dependencyOverrides` setting that would hit the conflict resolver, but I think that's too late in the resolution process (I've only begun digging into the ResovleEngine code and I haven't gotten to `fetchDependencies` yet). Is there a way to feed these properties into ivy so they get used? If so, we can provide that API to our users. Thanks! - Josh