Hi Russell, Is the circular dependency in the API itself (i.e., method signatures) or merely in usage of the classes in implementation? If only usage, one strategy to break compile-time dependencies is the java.lang.reflect API. It's not ideal -- your modules will still have a runtime circular dependency -- but it will give you a compile-time DAG for easier Maven modularization.
Regards, Curtis On Jul 24, 2013 9:58 PM, "Russell Gold" <r...@gold-family.us> wrote: > Exactly. Which I cannot do because these classes are public and our > customers rely on them. If I break the graph, that means changing a > behavior that a customer might be using, and that would be a serious > problem. > > I am pushing to deprecate the entire graph and provide a completely > different api that won't have these problems, but even if I get that > approved, we have to support this for several releases. > > If there's an alternative, I'm all ears. > > On Jul 24, 2013, at 10:38 PM, Barrie Treloar <baerr...@gmail.com> wrote: > > > On 25 July 2013 12:06, Russell Gold <r...@gold-family.us> wrote: > >> Or let me rephrase that. In simple terms, I have dependency graphs like > this: > >> > >> A ----> B ----> C > >> ^ | > >> \------- D <----/ > >> > >> How do I put these classes into separate modules? > > > > Short answer is: > > Break the graph. > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > > For additional commands, e-mail: users-h...@maven.apache.org > > > > ----------------- > Come read my webnovel, Take a Lemon <http://www.takealemon.com>, > and listen to the Misfile radio play < > http://www.gold-family.us/audio/misfile.html>! > > > > >