You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@gump.apache.org by Niclas Hedhman <ni...@hedhman.org> on 2004/03/15 09:02:29 UTC

HowTo split a project...

Hi,

I am splitting excalibur-event into "api" and "impl" as this is how the build 
system is (and been for a long time).
But "cocoon" is depending on "excalibur-event", so how should I go about 
fixing their <depend>s ??  Is that a matter "No my problem." or what?


Cheers
Niclas

-- 
+---------//-------------------+
|   http://www.bali.ac         |
|  http://niclas.hedhman.org   |
+------//----------------------+

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: HowTo split a project...

Posted by Niclas Hedhman <ni...@hedhman.org>.
On Monday 15 March 2004 17:18, Leo Simons wrote:
>You can also have something like
>
> <!-- don't use this one!!!
>       Migrate to depending on project-api and project-impl instead... -->
> <project name="project">
>    <depend project="project-api" inherit="jars"/>
>    <depend project="project-impl" inherit="jars"/>
> </project>
>
> inherit="jars" makes it appear that "project" actually produces the jars
> produced by "project-api" and "project-impl". It's a bit of a dirty
> trick, and the downside is that these things just lay around and clutter
> things up.

Thanks, this will be used, as the project is in "transitional termination" 
anyway.

Cheers
Niclas
-- 
+---------//-------------------+
|   http://www.bali.ac         |
|  http://niclas.hedhman.org   |
+------//----------------------+

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: HowTo split a project...

Posted by Niclas Hedhman <ni...@hedhman.org>.
On Tuesday 16 March 2004 00:40, Stefan Bodewig wrote:

> If you go with one of the first two options, the altrmi people will
> need to know as well.

I think the "altrmi people" are semi-retired Avaloners  :o)
I know it started in Avalon land, but was then moved to incubator to find a 
better home, and I suspect it risks to stay there in limbo :o(

I'll see what I can come up with. Thanks for the pointers....

Niclas

-- 
+---------//-------------------+
|   http://www.bali.ac         |
|  http://niclas.hedhman.org   |
+------//----------------------+

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: HowTo split a project...

Posted by Niclas Hedhman <ni...@hedhman.org>.
On Tuesday 16 March 2004 00:17, Niclas Hedhman wrote:
>      [java] Dropping project incubator-altrmi because of Exception
> java.lang.Exception: Multiple jars defined by project "excalibur-pool"
> referenced by project "incubator-altrmi"; an id attribute is required to
> select the one you want.
>
> but only for this case. Other projects depending on excalibur-pool doesn't
> complain, neither for others that has been split.

Found it... I think...  It had a <depend property="excalibur-pool.jar"..../> 
so I assume that Gump didn't know what to stick into the property.
-- 
+---------//-------------------+
|   http://www.bali.ac         |
|  http://niclas.hedhman.org   |
+------//----------------------+

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: HowTo split a project...

Posted by Stefan Bodewig <bo...@apache.org>.
On Tue, 16 Mar 2004, Niclas Hedhman <ni...@hedhman.org> wrote:

>      [java] Dropping project incubator-altrmi because of Exception
>      java.lang.Exception: Multiple jars defined by project
>      "excalibur-pool" referenced by project "incubator-altrmi"; an
>      id attribute is required to select the one you want.

incubator-altrmi uses

   <depend property="excalibur-pool.jar" project="excalibur-pool"/>

this not only makes it depend on excalibur-pool but also lets the Ant
property excalibur-pool.jar point to the location of *the* jar.  This
obviously can only work for a single jar as output.  The build will
probably try to copy the jar to some other place.

There are a couple of options:

(1) Assign ids to the generated jars and patch incubator-altrmi's
    descriptor to select either api or impl for the property.

  This will make both jars available for compilation but only one will
  be copied.  This certainly won't be what the altrmi developers
  expect since they now only get the API or only the implementation,
  but since the place the jar will live isn't used by anybody else,
  this shouldn't hurt.

(2)  Use the two projects directly

      <depend property="excalibur-pool.jar" project="excalibur-pool-api"/>
      <depend project="excalibur-pool-impl"/>

  Roughly the same as above, only without your deprecated project.

(3) Work with the altrmi people to get the build requirements clear.

If you go with one of the first two options, the altrmi people will
need to know as well.

I'd probably use (2) to get things building and start (3) in parallel.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: HowTo split a project...

Posted by Niclas Hedhman <ni...@hedhman.org>.
On Monday 15 March 2004 17:18, Leo Simons wrote:
> <!-- don't use this one!!!
>       Migrate to depending on project-api and project-impl instead... -->
> <project name="project">
>    <depend project="project-api" inherit="jars"/>
>    <depend project="project-impl" inherit="jars"/>
> </project>
>
> inherit="jars" makes it appear that "project" actually produces the jars
> produced by "project-api" and "project-impl". It's a bit of a dirty
> trick, and the downside is that these things just lay around and clutter
> things up.


The dirty trick results in

     [java] Dropping project incubator-altrmi because of Exception 
java.lang.Exception: Multiple jars defined by project "excalibur-pool" 
referenced by project "incubator-altrmi"; an id attribute is required to 
select the one you want.

but only for this case. Other projects depending on excalibur-pool doesn't 
complain, neither for others that has been split.

Any ideas?

Niclas
-- 
+---------//-------------------+
|   http://www.bali.ac         |
|  http://niclas.hedhman.org   |
+------//----------------------+

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: HowTo split a project...

Posted by Leo Simons <ls...@jicarilla.org>.
Stefan Bodewig wrote:
> On Mon, 15 Mar 2004, Niclas Hedhman <ni...@hedhman.org> wrote:
> 
>>I am splitting excalibur-event into "api" and "impl" as this is how
>>the build system is (and been for a long time).  But "cocoon" is
>>depending on "excalibur-event", so how should I go about fixing
>>their <depend>s ??
> 
> Send a patch to their dev list and tell them that their project is
> going to be dropped by Gump until your patch has been applied. 8-)

and if you want to be a nice guy, keep around a "delegating" <project/>. 
For example,

http://cvs.apache.org/viewcvs.cgi/*checkout*/avalon/buildsystem/gump-integration/project/avalon.xml

has one. You can also have something like

<!-- don't use this one!!!
      Migrate to depending on project-api and project-impl instead... -->
<project name="project">
   <depend project="project-api" inherit="jars"/>
   <depend project="project-impl" inherit="jars"/>
</project>

inherit="jars" makes it appear that "project" actually produces the jars 
produced by "project-api" and "project-impl". It's a bit of a dirty 
trick, and the downside is that these things just lay around and clutter 
things up.

In any case, get in touch with the dependees of the project, which are 
listed in the gump output:

http://lsd.student.utwente.nl/gump/avalon-excalibur/excalibur-logger.html#Project+Dependees

as always, someone should probably be documenting questions+answers on 
the wiki :-D

-- 
cheers,

- Leo Simons

-----------------------------------------------------------------------
Weblog              -- http://leosimons.com/
IoC Component Glue  -- http://jicarilla.org/
Articles & Opinions -- http://articles.leosimons.com/
-----------------------------------------------------------------------
"We started off trying to set up a small anarchist community, but
  people wouldn't obey the rules."
                                                         -- Alan Bennett



---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: HowTo split a project...

Posted by Stefan Bodewig <bo...@apache.org>.
On Mon, 15 Mar 2004, Niclas Hedhman <ni...@hedhman.org> wrote:

> I am splitting excalibur-event into "api" and "impl" as this is how
> the build system is (and been for a long time).  But "cocoon" is
> depending on "excalibur-event", so how should I go about fixing
> their <depend>s ??

Send a patch to their dev list and tell them that their project is
going to be dropped by Gump until your patch has been applied. 8-)

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org