You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@gump.apache.org by "Adam R. B. Jack" <aj...@apache.org> on 2005/05/19 01:28:57 UTC
Re: svn commit: r170825 - in /gump/branches/Gump3: metadata/tsws1.xml pygump/python/gump/plugins/builder.py pygump/python/gump/plugins/java/builder.py tsws1-settings.sh
I wrote:
> 2) Worked on the AntBuilder. Seems closer to providing the needs of the
Ant commandline.
> Still need to add <work> items to the Gump3 model complete the CLASSPATH.
>
> Note: Having 'class not found' issues, but since I'm on Win2K w/ Cygwin
I've no clue how the > CLASSPATH ought look (and it sure looks ugly.) I'd
like to test this on Linux.
Ok, so the issue resolves around <homedir>. Gump3 added to the project
outputs as a directory. I think this was being mixed up with <work>, which
is not an output either, but it is added to the classpath. I added support
for <work> and moved <homedir> to set project.homedir=ResolvablePath(), and
then resolved <outputs> relative to that new root. That seems to match (1)
what ant-bootstrap requires and (2) the docs:
http://gump.apache.org/metadata/project.html#home
http://gump.apache.org/metadata/project.html#work
Still, I'm not "comfortable" w/ my implementation, partly 'cos of the age
old (for Gump) problem of knowning what can be relied upon when converting
XML to objects (i.e. what objects/properties are yet set.) Further,
objectifier.py doesn't seem to have access to the work dir. I'm sure that is
by design, but it means I have to 'delay' resolving of things. Seems a tad
awkwards, and I'm not sure I'm in sync with why plugins have workdir, but
core parts don't. Is it to be clean, i.e. model not physical? Anyway, I'm
open to changes on what I've done. If it stands, I'll add some unit tests
'cos I had to remove a few that were absed upon old Homedir. (I'd need to
learn what this does first though,
self.assertRaises(AssertionError,Output,None) 'cos it seems like magic
sprinkled all over the tests.)
Anyway, I now get the (also not unfamiliar) mesages from Ant. At least it is
from Ant. :-) Basically it is 'cos we set the CLASSPATH to those artifacts
we have and (sadly, it seems) we need to prepend tools.jar. I'll work on
that soon, but I'm not sure (1) why Ant can't figure it out [since it seems
it tries to & I thought we had $JAVA_HOME] and (2) if we ought add the
$JAVA_HOME/lib/tools.jar hack again, blurgh.
I'm done for the day and going to enjoy some sunset over the snowy
mountains.
----------------------------------------------------------------------------
--------------
F:\data\Python\Gump3-SVN\pygump\work\gump3-test\ant\ant\build.xml:664:
Unable to
find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
----------------------------------------------------------------------------
--------------
BTW: Where can I see Gump3 runs on vmgump?
regards,
Adam
---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org
Re: svn commit: r170825
Posted by Leo Simons <ma...@leosimons.com>.
Adam R. B. Jack wrote:
<snip/>
> Still, I'm not "comfortable" w/ my implementation, partly 'cos of the age
> old (for Gump) problem of knowning what can be relied upon when converting
> XML to objects (i.e. what objects/properties are yet set.) Further,
> objectifier.py doesn't seem to have access to the work dir. I'm sure that is
> by design, but it means I have to 'delay' resolving of things. Seems a tad
> awkwards, and I'm not sure I'm in sync with why plugins have workdir, but
> core parts don't. Is it to be clean, i.e. model not physical?
I just changed a whole lot of this code (revision 209309). I think the
above caused 90% of your pain implementing all this. Didn't realise what
the problem was here until I actually tried to change some of the code
myself.
I went back through this thread and it became pretty clear to me where
the disconnect occurred (in the second paragraph starting the thread
:0). Basically the simplest thing (pass the workdir to the objectifier)
made a whole lot of other stuff easier.
To answer the original question above (now that I understand it), I
guess the "design" part of the objectifier until now not having access
to the work dir was because it didn't need it until now (well actually
until we started on this bit of code). By keeping all the relationships
and property use explicit (instead of passing around a big global
"config" or similar), we just pass in exactly what we use, but what we
use and hence what we pass in is subject to change (and easy to change,
if you look at the commit). Don't worry about making these kinds of
changes; just make sure you don't pass around big dictionaries (like the
entire config) unless you have to.
> Anyway, I'm
> open to changes on what I've done. If it stands, I'll add some unit tests
> 'cos I had to remove a few that were absed upon old Homedir.
I am ashamed to admit that I broke most of the unit tests today. I've
got uncommitted fixes for many of them, but I need to sort out the cruft
from my tree first. I just wanted to get this stuff in now since I could
use some feedback :-)
> (I'd need to
> learn what this does first though,
> self.assertRaises(AssertionError,Output,None) 'cos it seems like magic
> sprinkled all over the tests.)
the java equiv would be (yuck!):
try
{
Object o = new Output(None);
this.fail("Expected an AssertionError!");
}
catch(AssertionError ae) {}
basically it is testing that calling the "Output" function (the
constructor for the Output class, in this case) with the provided
arguments (in this case, only "None") results in an AssertionError.
cheers,
LSD
---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org
Re: svn commit: r170825 - in /gump/branches/Gump3:
metadata/tsws1.xml pygump/python/gump/plugins/builder.py
pygump/python/gump/plugins/java/builder.py tsws1-settings.sh
Posted by Leo Simons <ma...@leosimons.com>.
On 19-05-2005 01:28, "Adam R. B. Jack" <aj...@apache.org> wrote:
> Ok, so the issue resolves around <homedir>.
Don't fully understand the below, no time to look at the code atm.
> BTW: Where can I see Gump3 runs on vmgump?
http://vmgump.apache.org/gump/public/ iirc. I hope Berin finds time to get
you an account before the end of the week.
- LSD
---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org