Re: Quick rundown for using Ivy with multiple projects?

2021-01-01 Thread Robert 'Bobby' Zenz
 > I believe I now better understand the provided only adds jars if not
 > already  there??

Yes. What I was looking for was some way to specify "B depends on the
*source* of A located over *there*". I've now so far managed to tell
Ivy "B depends on the *jar* of A located over there".

As it comes to building, I guess I could mimic that behavior through
the Ant files, but it feels a little bit clunky because the top-level
Ant tasks would then work differently. For example, a resolve would
always need to compile A instead of simply doing a resolve.
Additionally, I have the odd feeling that I missed the easy solution
completely, because I can't be the first one trying to do a
multi-module structure like this in Ivy.


On Tue, 29 Dec 2020 23:13:58 -0500
Rob Silver  wrote:

> Hello  Robert 'Bobby' Zenz,
> 
> I too have been slow to respond for good reason. I had a family
> crisis that prevented me from responding.
> I believe I now better understand the provided only adds jars if not
> already  there??
> 
> 
> 
> On Sat, Dec 5, 2020 at 11:13 AM Robert 'Bobby' Zenz <
> robert.z...@bonsaimind.org> wrote:  
> 
> > Thanks for the fast response, sorry for my slow response.
> >
> > This is what I needed on the top-level, but how do I reference
> > correctly project A in project B? Assuming that B depends on A?
> >
> > I guess I need to set up a resolver, but so far I have a hard time
> > understanding what exactly I need to do.
> >
> >
> > On Sat, 28 Nov 2020 21:36:47 +0530
> > Jaikiran Pai  wrote:
> >  
> > > And of course, you then just do:
> > >
> > > ant clean deploy
> > >
> > > from the top level directory and that will then run those targets
> > > for all sub-projects.
> > >
> > > -Jaikiran
> > >
> > > On 28/11/20 9:34 pm, Jaikiran Pai wrote:  
> > > > It's a bit too late here, so I'll keep this short for now. In
> > > > one of the projects that we have, which has a similar
> > > > structure, we use Ivy's buildlist task[1] to first create the
> > > > ordered list of projects that need to be built and then invoke
> > > > on that ordered list. So the top level build.xml will have
> > > > something like ("clean" and "deploy" are just example common
> > > > targets in all these projects):
> > > >
> > > > 
> > > > 
> > > > 
> > > > 
> > > > 
> > > >
> > > > 
> > > > 
> > > >
> > > > 
> > > >  
> > > > 
> > > > 
> > > > 
> > > > 
> > > >
> > > >
> > > > [1] https://ant.apache.org/ivy/history/2.5.0/use/buildlist.html
> > > >
> > > > -Jaikiran
> > > >
> > > > On 28/11/20 9:27 pm, Robert 'Bobby' Zenz wrote:  
> > > >> Can somebody give me a quick rundown regarding the usage of
> > > >> Ant+Icy when having multiple projects in the same repository.
> > > >> I'm a little bit confusing regarding how to define the
> > > >> dependency.
> > > >>
> > > >> Let's assume that Project AB has the two modules A and B:
> > > >>
> > > >>  Parent AB
> > > >>   |-Project A
> > > >>   |  |-src
> > > >>   |  |-build.xml
> > > >>   |  \-ivy.xml
> > > >>   |-Project B
> > > >>   |  |-src
> > > >>   |  |-build.xml
> > > >>   |  \-ivy.xml
> > > >>   \-build.xml
> > > >>
> > > >> I'm unsure how to make B depending on A, and how to correctly
> > > >> declare that dependency in the ivy.xml of B. Do I need to
> > > >> define a custom resolver which is checking the other project?
> > > >> Can somebody give me a quick rundown on what is the best way
> > > >> to do this? Or should I structure my project differently?  
> >
> >  



Re: Quick rundown for using Ivy with multiple projects?

2020-12-29 Thread Rob Silver
Hello  Robert 'Bobby' Zenz,

I too have been slow to respond for good reason. I had a family crisis that
prevented me from responding.
I believe I now better understand the provided only adds jars if not
already  there??



On Sat, Dec 5, 2020 at 11:13 AM Robert 'Bobby' Zenz <
robert.z...@bonsaimind.org> wrote:

> Thanks for the fast response, sorry for my slow response.
>
> This is what I needed on the top-level, but how do I reference
> correctly project A in project B? Assuming that B depends on A?
>
> I guess I need to set up a resolver, but so far I have a hard time
> understanding what exactly I need to do.
>
>
> On Sat, 28 Nov 2020 21:36:47 +0530
> Jaikiran Pai  wrote:
>
> > And of course, you then just do:
> >
> > ant clean deploy
> >
> > from the top level directory and that will then run those targets for
> > all sub-projects.
> >
> > -Jaikiran
> >
> > On 28/11/20 9:34 pm, Jaikiran Pai wrote:
> > > It's a bit too late here, so I'll keep this short for now. In one
> > > of the projects that we have, which has a similar structure, we use
> > > Ivy's buildlist task[1] to first create the ordered list of
> > > projects that need to be built and then invoke on that ordered
> > > list. So the top level build.xml will have something like ("clean"
> > > and "deploy" are just example common targets in all these projects):
> > >
> > > 
> > > 
> > > 
> > > 
> > > 
> > >
> > > 
> > > 
> > >
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > >
> > >
> > > [1] https://ant.apache.org/ivy/history/2.5.0/use/buildlist.html
> > >
> > > -Jaikiran
> > >
> > > On 28/11/20 9:27 pm, Robert 'Bobby' Zenz wrote:
> > >> Can somebody give me a quick rundown regarding the usage of Ant+Icy
> > >> when having multiple projects in the same repository. I'm a little
> > >> bit confusing regarding how to define the dependency.
> > >>
> > >> Let's assume that Project AB has the two modules A and B:
> > >>
> > >>  Parent AB
> > >>   |-Project A
> > >>   |  |-src
> > >>   |  |-build.xml
> > >>   |  \-ivy.xml
> > >>   |-Project B
> > >>   |  |-src
> > >>   |  |-build.xml
> > >>   |  \-ivy.xml
> > >>   \-build.xml
> > >>
> > >> I'm unsure how to make B depending on A, and how to correctly
> > >> declare that dependency in the ivy.xml of B. Do I need to define a
> > >> custom resolver which is checking the other project? Can somebody
> > >> give me a quick rundown on what is the best way to do this? Or
> > >> should I structure my project differently?
>
>


Re: Quick rundown for using Ivy with multiple projects?

2020-12-13 Thread Robert 'Bobby' Zenz
I think I figured it out in a half-way sane way.

What I have now is a project looking like this:

Project
 |-modules
 |  |-ModuleA
 |  |  |-build.xml
 |  |  \-ivy.xml
 |  \-ModuleB
 | |-build.xml
 | \-ivy.xml
 |-build.xml
 |-build-module.xml
 \-ivysettings.xml

build.xml is basically only forwarding to each module, as you've shown
me. build-module.xml is the common build.xml for every module which is
imported by every module.

The ivysettings.xml contains a custom resolver chain which checks the
other modules for artifacts, before asking ibiblio for them:















"modulesdir" in this case is a variable pointing to my "modules"
directory. That means that if B depends on A, ivy will copy the build
artifact from A to B when resolving the dependencies.

So far this seems to work well enough, but obviously requires A to be
build before B can be resolve it, which might or might not turn out to
be a problem. Any comments? Did I miss or violate something?


On Sat, 5 Dec 2020 17:12:42 +0100
Robert 'Bobby' Zenz  wrote:

> Thanks for the fast response, sorry for my slow response.
> 
> This is what I needed on the top-level, but how do I reference
> correctly project A in project B? Assuming that B depends on A?
> 
> I guess I need to set up a resolver, but so far I have a hard time
> understanding what exactly I need to do.
> 
> 
> On Sat, 28 Nov 2020 21:36:47 +0530
> Jaikiran Pai  wrote:
> 
> > And of course, you then just do:
> > 
> > ant clean deploy
> > 
> > from the top level directory and that will then run those targets
> > for all sub-projects.
> > 
> > -Jaikiran
> > 
> > On 28/11/20 9:34 pm, Jaikiran Pai wrote:  
> > > It's a bit too late here, so I'll keep this short for now. In one
> > > of the projects that we have, which has a similar structure, we
> > > use Ivy's buildlist task[1] to first create the ordered list of
> > > projects that need to be built and then invoke on that ordered
> > > list. So the top level build.xml will have something like ("clean"
> > > and "deploy" are just example common targets in all these
> > > projects):
> > >
> > > 
> > >     
> > >     
> > >     
> > > 
> > >
> > > 
> > > 
> > >
> > > 
> > >      
> > >     
> > >     
> > >     
> > > 
> > >
> > >
> > > [1] https://ant.apache.org/ivy/history/2.5.0/use/buildlist.html
> > >
> > > -Jaikiran
> > >
> > > On 28/11/20 9:27 pm, Robert 'Bobby' Zenz wrote:
> > >> Can somebody give me a quick rundown regarding the usage of
> > >> Ant+Icy when having multiple projects in the same repository.
> > >> I'm a little bit confusing regarding how to define the
> > >> dependency.
> > >>
> > >> Let's assume that Project AB has the two modules A and B:
> > >>
> > >>  Parent AB
> > >>   |-Project A
> > >>   |  |-src
> > >>   |  |-build.xml
> > >>   |  \-ivy.xml
> > >>   |-Project B
> > >>   |  |-src
> > >>   |  |-build.xml
> > >>   |  \-ivy.xml
> > >>   \-build.xml
> > >>
> > >> I'm unsure how to make B depending on A, and how to correctly
> > >> declare that dependency in the ivy.xml of B. Do I need to define
> > >> a custom resolver which is checking the other project? Can
> > >> somebody give me a quick rundown on what is the best way to do
> > >> this? Or should I structure my project differently?
> 



Re: Quick rundown for using Ivy with multiple projects?

2020-12-05 Thread Robert 'Bobby' Zenz
Thanks for the fast response, sorry for my slow response.

This is what I needed on the top-level, but how do I reference
correctly project A in project B? Assuming that B depends on A?

I guess I need to set up a resolver, but so far I have a hard time
understanding what exactly I need to do.


On Sat, 28 Nov 2020 21:36:47 +0530
Jaikiran Pai  wrote:

> And of course, you then just do:
> 
> ant clean deploy
> 
> from the top level directory and that will then run those targets for 
> all sub-projects.
> 
> -Jaikiran
> 
> On 28/11/20 9:34 pm, Jaikiran Pai wrote:
> > It's a bit too late here, so I'll keep this short for now. In one
> > of the projects that we have, which has a similar structure, we use
> > Ivy's buildlist task[1] to first create the ordered list of
> > projects that need to be built and then invoke on that ordered
> > list. So the top level build.xml will have something like ("clean"
> > and "deploy" are just example common targets in all these projects):
> >
> > 
> >     
> >     
> >     
> > 
> >
> > 
> > 
> >
> > 
> >     
> >     
> >     
> >     
> >     
> > 
> >
> >
> > [1] https://ant.apache.org/ivy/history/2.5.0/use/buildlist.html
> >
> > -Jaikiran
> >
> > On 28/11/20 9:27 pm, Robert 'Bobby' Zenz wrote:  
> >> Can somebody give me a quick rundown regarding the usage of Ant+Icy
> >> when having multiple projects in the same repository. I'm a little
> >> bit confusing regarding how to define the dependency.
> >>
> >> Let's assume that Project AB has the two modules A and B:
> >>
> >>  Parent AB
> >>   |-Project A
> >>   |  |-src
> >>   |  |-build.xml
> >>   |  \-ivy.xml
> >>   |-Project B
> >>   |  |-src
> >>   |  |-build.xml
> >>   |  \-ivy.xml
> >>   \-build.xml
> >>
> >> I'm unsure how to make B depending on A, and how to correctly
> >> declare that dependency in the ivy.xml of B. Do I need to define a
> >> custom resolver which is checking the other project? Can somebody
> >> give me a quick rundown on what is the best way to do this? Or
> >> should I structure my project differently?  



Re: Quick rundown for using Ivy with multiple projects?

2020-11-28 Thread Jaikiran Pai

And of course, you then just do:

ant clean deploy

from the top level directory and that will then run those targets for 
all sub-projects.


-Jaikiran

On 28/11/20 9:34 pm, Jaikiran Pai wrote:
It's a bit too late here, so I'll keep this short for now. In one of 
the projects that we have, which has a similar structure, we use Ivy's 
buildlist task[1] to first create the ordered list of projects that 
need to be built and then invoke on that ordered list. So the top 
level build.xml will have something like ("clean" and "deploy" are 
just example common targets in all these projects):



    
    
    






    
    
    
    
    



[1] https://ant.apache.org/ivy/history/2.5.0/use/buildlist.html

-Jaikiran

On 28/11/20 9:27 pm, Robert 'Bobby' Zenz wrote:

Can somebody give me a quick rundown regarding the usage of Ant+Icy
when having multiple projects in the same repository. I'm a little bit
confusing regarding how to define the dependency.

Let's assume that Project AB has the two modules A and B:

 Parent AB
  |-Project A
  |  |-src
  |  |-build.xml
  |  \-ivy.xml
  |-Project B
  |  |-src
  |  |-build.xml
  |  \-ivy.xml
  \-build.xml

I'm unsure how to make B depending on A, and how to correctly declare
that dependency in the ivy.xml of B. Do I need to define a custom
resolver which is checking the other project? Can somebody give me a
quick rundown on what is the best way to do this? Or should I structure
my project differently?


Re: Quick rundown for using Ivy with multiple projects?

2020-11-28 Thread Jaikiran Pai
It's a bit too late here, so I'll keep this short for now. In one of the 
projects that we have, which has a similar structure, we use Ivy's 
buildlist task[1] to first create the ordered list of projects that need 
to be built and then invoke on that ordered list. So the top level 
build.xml will have something like ("clean" and "deploy" are just 
example common targets in all these projects):



    
    
    






    
    
    
    
    



[1] https://ant.apache.org/ivy/history/2.5.0/use/buildlist.html

-Jaikiran

On 28/11/20 9:27 pm, Robert 'Bobby' Zenz wrote:

Can somebody give me a quick rundown regarding the usage of Ant+Icy
when having multiple projects in the same repository. I'm a little bit
confusing regarding how to define the dependency.

Let's assume that Project AB has the two modules A and B:

 Parent AB
  |-Project A
  |  |-src
  |  |-build.xml
  |  \-ivy.xml
  |-Project B
  |  |-src
  |  |-build.xml
  |  \-ivy.xml
  \-build.xml

I'm unsure how to make B depending on A, and how to correctly declare
that dependency in the ivy.xml of B. Do I need to define a custom
resolver which is checking the other project? Can somebody give me a
quick rundown on what is the best way to do this? Or should I structure
my project differently?