You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avalon.apache.org by Leo Simons <le...@apache.org> on 2003/02/19 14:12:34 UTC

gump & avalon & altrmi problems cont'd...

been working on our gump setup locally. Fixed a few things. One thing I got:

gen:
      [java] java.lang.Exception: Circular dependency loop involving:
      [java]   avalon-cornerstone
      [java]   excalibur-component
      [java]   incubator-altrmi
      [java]   excalibur-instrument-manager
      [java]   excalibur-datasource
      [java]   excalibur-testcase
      [java]     at Project.sort(Project.java:573)
      [java]     at Project.load(Project.java:130)
      [java]     at Jenny.<init>(Jenny.java:402)
      [java]     at Jenny.main(Jenny.java:426)

altrmi depends on cornerstone, which depends on datasource, which 
depends on testcase and component, which depend on instrument-manager, 
which has an optional dependency on altrmi.

If the optional dependency on altrmi within instrument-manager is 
removed, things 'work'.

However, it seems like the actual change we need to make is to finish 
the split of avalon-cornerstone, so that altrmi depends on 
cornerstone-connection & cornerstone-socket, and excalibur-datasource 
depends on cornerstone-datasource.

The third alternative is to take advantage of the fact that the altrmi 
dependency for instrument-manager is optional, and add an extra target. 
As this is the easiest one it is what I did :D

cheers,

- Leo



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org


Re: gump & avalon & altrmi problems cont'd...

Posted by Paul Hammant <pa...@yahoo.com>.
> The second is that 
> org.apache.avalon.phoenix.tools.metagenerate.MetaGenerateTask requires 
> org/apache/avalon/framework/tools/ant/MetaGenerateTask which can be 
> found in excalibur-info which is in avalon-sandbox.

OK, I'll do some rollback on that.

We (Avalon) have become victims of our own CVS surgery...

- Paul

__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com

Re: gump & avalon & altrmi problems cont'd...

Posted by Sam Ruby <ru...@apache.org>.
Stefan Bodewig wrote:
> On Fri, 21 Feb 2003, Leo Simons <le...@apache.org> wrote:
> 
>>My guess is that the metagenerate jar needs type="boot", and
>>bootclass="yes" in the gump workspace.
> 
> I don't think so.  Other (third party) Ant tasks work without this
> extra step within Gump.  See checkstyle for example.

I don't think so either.

> My guess is that the task itself needs some other classes that are not
> present in your setup.  You can run
> 
> ./build.sh project target -debug
> 
> to see which class Ant fails to load.

There seem to be several problems here.  The first is that the "ids" tag 
is supposed to be space separated and that gump didn't report any errors 
when the specified id can't be found.

The second is that 
org.apache.avalon.phoenix.tools.metagenerate.MetaGenerateTask requires 
org/apache/avalon/framework/tools/ant/MetaGenerateTask which can be 
found in excalibur-info which is in avalon-sandbox.

- Sam Ruby



Re: gump & avalon & altrmi problems cont'd...

Posted by Stefan Bodewig <bo...@apache.org>.
On Fri, 21 Feb 2003, Leo Simons <le...@apache.org> wrote:

> My guess is that the metagenerate jar needs type="boot", and
> bootclass="yes" in the gump workspace.

I don't think so.  Other (third party) Ant tasks work without this
extra step within Gump.  See checkstyle for example.

My guess is that the task itself needs some other classes that are not
present in your setup.  You can run

./build.sh project target -debug

to see which class Ant fails to load.

Mark these dependencies as runtime in metagenerate and use
inherit="runtime" to pull them in into the project that needs
metagenerate.

> However, this feature is marked experimental and not enabled in the
> nightly runs atm.

AFAIU we use type="boot" for Xerces and Xalan in the nightly builds.

Stefan

Re: gump & avalon & altrmi problems cont'd...

Posted by Leo Simons <le...@apache.org>.
The latest difficulty: phoenix-metagenerate.jar (created by the 
avalon-phoenix project) contains an ant task, which is used in other 
projects like cornerstone to do some nifty stuff.

The jar is given an id, and this is referenced by cornerstone (for 
example) correctly, but the ant <taskdef/> still fails 
(http://nagoya.apache.org/~rubys/gump/avalon-cornerstone.html). My guess 
is that the metagenerate jar needs type="boot", and bootclass="yes" in 
the gump workspace. However, this feature is marked experimental and not 
enabled in the nightly runs atm.

So, is there another way? What's the path to salvation? Maybe it makes 
sense to make phoenix-metagenerate an installed package or something 
like that?

cheers,

- Leo



Re: gump & avalon & altrmi problems cont'd...

Posted by Leo Simons <le...@apache.org>.
Paul Hammant wrote:
> Leo,
> 
> I think the crucial node is instrument.  Can we go ahead with the extra target for that?

yep. It's not just the recent issue with altrmi though that concerns me. 
There is much potential for deadlock with the increasing amount of 
common code floating around. The problem hasn't really arisen before 
because commons peeps usually make sure there is virtually no dependency 
on avalon (well, I actually suspect because excalibur build was broken 
so long ;)), meaning the dependency worries have basically been 
restricted to the logging stuff until now.

> Or should we look at AltRMI a bit closer in that the cornerstone dependancy is optional itself for
> AltRMI?

nah. When you look at the dependency management on a granular class 
level, all is well. We just need to set things up so this is reflected 
in jar packaging.

cheers,

- Leo



Re: gump & avalon & altrmi problems cont'd...

Posted by Paul Hammant <pa...@yahoo.com>.
Leo,

I think the crucial node is instrument.  Can we go ahead with the extra target for that?

Or should we look at AltRMI a bit closer in that the cornerstone dependancy is optional itself for
AltRMI?

- Paul

 --- Leo Simons <le...@apache.org> wrote: > been working on our gump setup locally. Fixed a
few things. One thing I got:
> 
> gen:
>       [java] java.lang.Exception: Circular dependency loop involving:
>       [java]   avalon-cornerstone
>       [java]   excalibur-component
>       [java]   incubator-altrmi
>       [java]   excalibur-instrument-manager
>       [java]   excalibur-datasource
>       [java]   excalibur-testcase
>       [java]     at Project.sort(Project.java:573)
>       [java]     at Project.load(Project.java:130)
>       [java]     at Jenny.<init>(Jenny.java:402)
>       [java]     at Jenny.main(Jenny.java:426)
> 
> altrmi depends on cornerstone, which depends on datasource, which 
> depends on testcase and component, which depend on instrument-manager, 
> which has an optional dependency on altrmi.
> 
> If the optional dependency on altrmi within instrument-manager is 
> removed, things 'work'.
> 
> However, it seems like the actual change we need to make is to finish 
> the split of avalon-cornerstone, so that altrmi depends on 
> cornerstone-connection & cornerstone-socket, and excalibur-datasource 
> depends on cornerstone-datasource.
> 
> The third alternative is to take advantage of the fact that the altrmi 
> dependency for instrument-manager is optional, and add an extra target. 
> As this is the easiest one it is what I did :D
> 
> cheers,
> 
> - Leo
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: gump-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: gump-help@jakarta.apache.org
>  

__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com