Our assumption thus far has been that for a given build, including within a 
reactor, that the dependencies would boil down to a graph so by definition one 
instance. I think what you're seeing is the transformation of the tree to a 
graph and having leftovers.  So for right now, for all the use cases that we 
purport to deal with assumes a graph structure in the end. For typical Java 
this makes sense because we're dealing a normal classloader structure where 
there is generally one per runtime, or at best one per application like a 
webapp. 

The one concrete use case that we have in Tycho right now is that because 
OSGi's classloaders are more sophisticated what we have there is resolution per 
project in a given reactor because given N bundles each may have a different of 
of artifact A with no adverse affects. And the transitive closure of A may be 
different in each case.

So I would do anything now that assumes the graph for a reactor, and eventually 
we'll figure out how to merge in the concepts from Tycho where we truly will 
have multiple graphs.

Some other things to note is that you should probably chat with Benjamin as 
there is a rework of the artifact resolution API on a branch that probably 
won't make it into 3.0 but I'd like your changes not to impede the absorption 
of those changes ultimately.

On Feb 13, 2010, at 3:34 PM, Kristian Rosenvold wrote:

> It seems like an artifact with coordinates X has one separate instance
> of DefaultArtifact in each project it appears. So project P0 has
> instance X1 and P1 has instance X2. When the jar plugin in P0 calls
> setFile on X1, X2 does not get updated.
> 
> Is there a well-defined business case for this behaviour ? I suppose in
> "linear" maven these instances are not concurrently in service, and it
> may not matter too much. Since I feel they represent underlying
> singletons, I'd like to make them so. Anyone have any good reason not
> to ? (I was /thinking/ along the lines that there may be something
> related to snapshot versions, but that's just a little over my head) 
> 
> (The reason I'm asking is that I find myself writing some fairly 
> questionable code to transfer attributes from X1->X2)
> 
> Kristian
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 

Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder,  Apache Maven
http://twitter.com/jvanzyl
----------------------------------------------------------

Reply via email to