Yes, you are right. I discovered I have setup the dependencies between
the project in a wrong way.

I have used

dependencies {
     if( prjExist('prjY') ) {
         dependsOn(":prjY")
     else
         compile "prjY:prjY:jar"
}

while the correct one is

dependencies {
     if( prjExist('prjX') ) {
         compile project(":prjY")
     else
         compile "prjY:prjY:jar"
}

Sorry for that :( Too many upgrades and experiments ;). It is a pitty
that dependsOn is not reporting any issue :(

Thank you again for your time

Now I can try to copy the built jar into the lib of the project of interest.

Ciao

Walter

On 14 May 2010 13:47, Philip Crotwell <[email protected]> wrote:
> This works fine in my multiprojects, and all dependencies of
> dependency projects get copied. Perhaps you need
> configurations.compile.transitive = true
>
> Philip
>
> On Fri, May 14, 2010 at 4:36 AM, Walter Di Carlo <[email protected]> wrote:
>> Hi Philip,
>>
>> thank you for your link, but I think it can be useful only after I
>> have found the lib folders of ALL DEPENDENTS projects. Let me extend
>> my example. Suppose there are 3 projects
>>
>> prjA
>>  lib
>>  dist
>> prjB
>>   lib
>>   dist
>> prjC
>>   lib
>>   dist
>>
>> where dependencies are
>>  prjA -> prjB
>>  prjA -> prjC
>>
>>  prjB -> prjC
>>
>> Note that the prjC's jar is needed by prjA and prjB. Hence, I would
>> like the :prjC:uploadArchives task to copy its prjC/dist/prjC.jar into
>> the lib folder of ALL DEPENDENTS projects, i.e. into prjA/lib and
>> prjB/lib. I need this because all project must be self-consistent if
>> they are checked out from the repository.
>>
>> The java plugin has the task buildDependents. So, I suppose there is a
>> way to know which project need the jar produced by the current
>> project.  I have tried to use the following but it returns only the
>> current project.
>>
>>             def t = task.project.tasks.buildDependents
>>             def myset = t.taskDependencies.getDependencies(t)*.path as Set
>>
>> Ciao
>>
>> Walter
>>
>> On 13 May 2010 16:22, Philip Crotwell <[email protected]> wrote:
>>> Hi
>>>
>>> See the cookbook:
>>> http://gradle.codehaus.org/Cookbook#Cookbook-GatheringalldependencieslibrariesJARsinonefolder
>>>
>>> Philip
>>>
>>> On Thu, May 13, 2010 at 9:31 AM, Walter Di Carlo <[email protected]> wrote:
>>>> Hi,
>>>>
>>>> I am trying to customize the uploadArchives task in order to copy the
>>>> generated jar into the lib folder of the dependents project. So,
>>>> having the follwoing structure
>>>>
>>>> prjA
>>>>   lib
>>>>   dist
>>>> prjB
>>>>   lib
>>>>   dist
>>>>
>>>> where prjA depends on prjB. Then I would like to copy the generated
>>>> jar in the prjB/dist into the prjA/lib.
>>>>
>>>> As first step I am trying to figure out ho to obtain the list of
>>>> depentents project using the following task
>>>>
>>>> subprojects {
>>>>    apply plugin: 'java'
>>>>    ....
>>>>    task list_dependents << { task ->
>>>>             def t = task.project.tasks.buildDependents
>>>>             def myset = t.taskDependencies.getDependencies(t)*.path as Set
>>>>             myset.each { o -> println o }
>>>>    }
>>>> }
>>>>
>>>> The problem is the it returns only the current project. What am I
>>>> missing? Note that I am using the gradle 0.9-preview
>>>>
>>>> Regards,
>>>>
>>>> Walter
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe from this list, please visit:
>>>>
>>>>    http://xircles.codehaus.org/manage_email
>>>>
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe from this list, please visit:
>>>
>>>    http://xircles.codehaus.org/manage_email
>>>
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>>    http://xircles.codehaus.org/manage_email
>>
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
>    http://xircles.codehaus.org/manage_email
>
>
>

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to