Hi Curtis, sadly, it's in the API. I've oversimplified. In general, one of the 
classes in the chain actually has direct API references to hundreds of others. 
It turns out that at least some of the links are through deprecated classes. I 
am hoping that in the next version, we can remove them - and then see if that 
makes things more manageable. I'm not hopeful, though.

- Russ

On Jul 24, 2013, at 11:03 PM, Curtis Rueden <ctrue...@wisc.edu> wrote:

> 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>!
>> 
>> 
>> 
>> 
>> 

-----------------
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>!




Reply via email to