On 2010-07-27, Stefan Seelmann wrote: >> It looks as if protocol-ldap depended on protocol-shared but didn't >> specify this inside its POM. I would expect it to receive this >> dependency transitively via kerberos-shared (albeit a non-transitive >> dependency would be cleaner IMHO) but for some reason mvn doesn't.
> Which Maven version are you using? 2.2.1 > Anyway, you are right. Direct dependencies should be added to the pom. > I checked with mvn dependency:analyze and added > apacheds-protocol-shared and shared-asn1. That's great, thanks. > Could you please test again? Will happen automatically during the next run and there isn't much I could do in the meantime anyway. > Another question: The snapshot repository you are using > (http://localhost:8192/repo/m2-snapshot-repository/....), is that the > official snapshot repository http://repository.apache.org/snapshots/ ? I need to explain what Gump is used for before I can properly answer this. Gump is not your usual continuous integration server, it fills a very special purpose. For most of your dependencies it will completely ignore the version you ask for and will always give you the current trunk of your dependency. It expects projects to build, this is integration at a larger scale and Gump tries to find changes that break downstream dependencies before they become part of releases. This is valuable for projects that have many downstream users - typically libraries like the Apache Commons projects but also things like Ant where the API may change in ways that break third party Ant tasks. It is also valuable for projects that depend on many projects since they will know if they can safely upgrade - and can even try to lobby their dependencies to avoid backwards incompatible changes before they become part of a released API. END OF GUMP COMMERCIAL. For some build tools like Ant, Gump support comes built-in - when Gump was created initially, Ant was the only Java tool around. For mvn Gump installs a local web application and registers it as mirror for most common repositories. This web application is the one listening at the port above. If mvn asks the web application for a jar that belongs to a project that Gump builds, it will return the jar built from trunk - no matter which version has been asked for. If it asks for a jar the web application doesn't know about the webapp works as a proxy to the real repository mvn would have asked. In your case the snapshots are current because the web application serves them from the freshly built trunk jars. If you asked for something not built by Gump it would be a proxy of the official Apache snapshots repository. Stefan
