The m2e plugin I think already does what you are looking for. It has a
dependency heirarchy and graph. I use these often to determine what
libraries are being used when there is a conflict.

---
Todd Thiessen
 

> -----Original Message-----
> From: Setter Guo [mailto:setter....@yahoo.com] 
> Sent: Tuesday, March 02, 2010 7:23 AM
> To: users@maven.apache.org
> Cc: d...@maven.apache.org
> Subject: Straight line or Chaos? (My thoughts on resolving 
> dependencies problems for open source libraries)
> 
> Hi Maven users and devs,
> 
> I think a lot of guys pain on unconsistency of open-source 
> libraries. For example, if libA depends on libB v1, and libC 
> depends on libB v2. If someone(libD) want to use libA and 
> libC at the same time, it will face problem on upgrading libA 
> to match libB v1. Once there are a lot of libraries, it is 
> nightmare to make everyone on the same page.
> 
> I don't know whether there are some solutions currently. If 
> there are, thank you very much to let me know.
> 
> In my thought, I think maybe we can do something to make the 
> open-source world to a line. Because maven works as a 
> software management tool, it is very make-sense to discuss my 
> thoughts here, hope you are interested in this discussion. 
> Below is a short description of my thought.
> 
> 1) In maven world, we use "mvn install" to build. In this 
> stage, it is possible to sync-up the libraries version 
> between repositories and local copies. As example above, once 
> libB upgrades to v2, the repository should get the 
> information, and the local copy will get this information 
> when it connect the repository. This is very simple.
> 
> 2) In advance, the repository can handle the dependencies 
> between libs. For example above, it keeps "libC => libB v2" 
> and "libA => libB v1" informations. Because libB has been 
> upgraded to v2, libA may get warning to notify the owners to 
> upgrade the library.
> 
> 3) So, once someone use libs on maven, based on the 
> dependencies provided by maven, it can automatically create a 
> dependencies graph, and version inside will indicate whether 
> there are conflicts. That means, libD devs will know there 
> are two different versions of libB used, and will introduce conflicts.
> 
> I don't know whether there are some plugins doing thing like 
> above, I hope so. Anyone knows it, please let me know. Many Thanks!
> 
> Best Regards,
> Setter
> 
> 
>       
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to