[infinispan-dev] Re: Maven.assembly.useTransitiveDependencies true or false? WAS Re: More demo

Manik Surtani manik at jboss.org
Thu Jul 9 04:49:21 EDT 2009


On 9 Jul 2009, at 08:57, Galder Zamarreno wrote:

> Manik, for Alph6, what do u think we should be doing? Leave  
> useTransitiveDependencies as it is and make modules such as S3 be  
> more explicit with their dependencies? Or set it to true?

I'm not fussed which approach we take.  They're both kinda hacky  
workarounds around Maven's inadequacies either way.  :-)

>
> On 06/30/2009 06:04 PM, Adrian Cole wrote:
>> Thanks for writing this up, Galder.
>>
>> The latter seems the better of the two.  It may need to be  
>> implemented as a
>> separate antscript task, as assembly may not have a hook for this.
>>
>> -Adrian
>>
>> On Tue, Jun 30, 2009 at 5:59 PM, Galder Zamarreno<
>> galder.zamarreno at redhat.com>  wrote:
>>
>>> Hmmmmm, this has a domino effect. Because s3 module depends on
>>> infinispan-core, it now pulls all its dependencies, so we need to  
>>> exclude
>>> them somehow, cos they're dependencies of the core module and  
>>> hence they
>>> should reside there rather than have them in each and every module.
>>>
>>> Personally, in spite of the repetition, I prefer explicit dependency
>>> definition rather than letting maven bring all transitive  
>>> dependencies and
>>> then having to go and do exclusions.
>>>
>>> More globally, I think this needs to be put the infinispan-dev  
>>> list. During
>>> assembly, do we either:
>>>
>>> - Leave useTransitiveDependencies as it is, which is false, and make
>>> modules like s3 explicitly define the 3rd party dependencies that  
>>> jclouds
>>> depends on.
>>>
>>> - Or set useTransitiveDependencies to true so that they're all  
>>> brought in
>>> and exclude direct infinispan-core dependecies from getting to the  
>>> lib
>>> directories of submodules such as s3.
>>>
>>> For the moment, and to make my life easier getting the demo  
>>> working, I'm
>>> using the latter option.
>>>
>>> Thoughts?
>>>
>>> On 06/30/2009 05:47 PM, Adrian Cole wrote:
>>>
>>>> beware of the assemblies...  they are extremely crufty compared  
>>>> to ant ;)
>>>>
>>>> On Tue, Jun 30, 2009 at 5:45 PM, Galder Zamarreno<
>>>> galder.zamarreno at redhat.com>   wrote:
>>>>
>>>>
>>>>> On 06/30/2009 05:22 PM, Adrian Cole wrote:
>>>>>
>>>>>  Well.. :)  I setup the dependencies of jclouds, so it shouldn't  
>>>>> bring
>>>>>> anything crazy in!  Besides, a missing dep might be symptomatic  
>>>>>> of a
>>>>>> larger
>>>>>> issue in the distribution assembly.
>>>>>>
>>>>>>  Ahh, maybe just found the reason why transitive dependencies  
>>>>>> are not
>>>>> included:
>>>>>
>>>>> src/main/resources/assemblies/bin.xml:
>>>>>    <useTransitiveDependencies>false</useTransitiveDependencies>
>>>>>
>>>>> I'm trying out with that parameter set to true.
>>>>>
>>>>>
>>>>>
>>>>>  Anyway, let me know how it goes.
>>>>>> on the SNAPSHOT bit, it was irrelevant to the topic. no worries  
>>>>>> on that.
>>>>>>
>>>>>> Thanks again for sorting this out, Galder.
>>>>>> -a
>>>>>>
>>>>>> On Tue, Jun 30, 2009 at 5:11 PM, Galder Zamarreno<
>>>>>> galder.zamarreno at redhat.com>    wrote:
>>>>>>
>>>>>>
>>>>>>  On 06/30/2009 05:00 PM, Galder Zamarreno wrote:
>>>>>>>
>>>>>>>  On 06/30/2009 04:55 PM, Adrian Cole wrote:
>>>>>>>>  many thanks, Galder. It should be a transitive dep from  
>>>>>>>> jclouds-s3...
>>>>>>>>
>>>>>>>>> mvn
>>>>>>>>> dependency:tree
>>>>>>>>>
>>>>>>>>> maybe the distribution isn't pulling in deps properly.
>>>>>>>>>
>>>>>>>>>  Yeah, that looks to be the issue. At the moment I'm trying to
>>>>>>>>> redefine
>>>>>>>>>
>>>>>>>> them in the s3 project but maybe there's another way to do  
>>>>>>>> this?
>>>>>>>> Google
>>>>>>>> to the rescue...
>>>>>>>>
>>>>>>>>  Hmmm, even though it's repetition, I think it might be safer  
>>>>>>>> to
>>>>>>>>
>>>>>>> redefine
>>>>>>> the transitive dependencies rather than let it bring them all.  
>>>>>>> You
>>>>>>> never
>>>>>>> know what Maven might bring with it...
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>  I will be cutting a new beta within the next couple days, so  
>>>>>>> maybe you
>>>>>>>
>>>>>>>> can
>>>>>>>>> switch temporarily to snapshot to ensure it will work?
>>>>>>>>>
>>>>>>>>>  Hmmm, why would I need a snapshot of jclouds? I've simply  
>>>>>>>>> been
>>>>>>>>> adding
>>>>>>>>>
>>>>>>>> the transitive dependencies manually in s3/pom.xml
>>>>>>>>
>>>>>>>>
>>>>>>>>  Thanks,
>>>>>>>>
>>>>>>>>> -Adrian
>>>>>>>>>
>>>>>>>>> On Tue, Jun 30, 2009 at 4:40 PM, Galder Zamarreno<
>>>>>>>>> galder.zamarreno at redhat.com>    wrote:
>>>>>>>>>
>>>>>>>>>  Hi Adrian,
>>>>>>>>>
>>>>>>>>>  I'm trying to make further progress with the demo and I'm
>>>>>>>>>> encountering the
>>>>>>>>>> following issue:
>>>>>>>>>>
>>>>>>>>>> Caused by: java.lang.ClassNotFoundException:
>>>>>>>>>> org.jclouds.logging.config.LoggingModule
>>>>>>>>>>
>>>>>>>>>> The list of jars that is distributed does not include
>>>>>>>>>> jclouds-core-1.0-beta-1.jar and this looks to be cos  
>>>>>>>>>> there's no
>>>>>>>>>> direct
>>>>>>>>>> dependency on this jar in the pom.xml for the s3 cache  
>>>>>>>>>> store module.
>>>>>>>>>>
>>>>>>>>>> FYI: I'm adding this dependency. I think there's a similar  
>>>>>>>>>> issue
>>>>>>>>>> with
>>>>>>>>>> google guice...
>>>>>>>>>>
>>>>>>>>>> Anyway, just letting you know of issues as I find them.
>>>>>>>>>>
>>>>>>>>>> See ya,
>>>>>>>>>> --
>>>>>>>>>> Galder Zamarreño
>>>>>>>>>> Sr. Software Engineer
>>>>>>>>>> Infinispan, JBoss Cache
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  --
>>>>>>>>>>
>>>>>>>>> Galder Zamarreño
>>>>>>> Sr. Software Engineer
>>>>>>> Infinispan, JBoss Cache
>>>>>>>
>>>>>>>
>>>>>>>  --
>>>>> Galder Zamarreño
>>>>> Sr. Software Engineer
>>>>> Infinispan, JBoss Cache
>>>>>
>>>>>
>>> --
>>> Galder Zamarreño
>>> Sr. Software Engineer
>>> Infinispan, JBoss Cache
>>>
>>
>
> -- 
> Galder Zamarreño
> Sr. Software Engineer
> Infinispan, JBoss Cache

--
Manik Surtani
manik at jboss.org
Lead, Infinispan
Lead, JBoss Cache
http://www.infinispan.org
http://www.jbosscache.org








More information about the infinispan-dev mailing list