Re: [all] Project consistency (was Re: [math] Re: Getting started questions)

2004-02-03 Thread Brent Redeker
On Feb 3, 2004, at 9:43 AM, Mark R. Diggory wrote:
Brent Redeker wrote:
On Feb 3, 2004, at 6:54 AM, Mark R. Diggory wrote:
Here,here! I recommend using the maven generated, ant build.xml over 
the maven project.xml for developer building and testing. This then 
requires no dependencies on parent project.xml and it runs 
independently in just about any IDE. I reserve my own usage of Maven 
more for building site/releases, in which case you do need the 
dependency on the parent project.xml.
I think this is a good suggestion. While I was setting myself up to 
be able to read/compile the sources, I really had little need to use 
Maven - build.xml is enough to compile and test the math project (and 
I assume Maven uses this as part of the process in creating a jar). 
Still, from what I can see, Maven might have uses for things other 
than just creating the web site and release builds. It downloads 
correct versions of all dependency jars, saving a little bit of work. 
Also, I imagine that if somebody makes documentation changes, they 
would need to do a 'maven site:generate' to see what the changes 
actually will look like.
Yes, this is correct, But, at least in the math xdocs, I've provided 
an xsl stylesheet that mimics the xdoc transform so that you can 
loosely see what the contents will look like when generated (or at 
least verify that the xml file is valid. Try looking at any of the 
math/xdocs in Mozilla or I.E. you should see what I mean then.
Hmmm... learn something new every day, I guess. I hadn't tried looking 
at the xdocs in a browser yet.

The build.xml file in math is actually generated by calling "maven 
ant" which creates the build.xml (with the same dependencies as would 
ahve been resolved by maven itself. Maven doesn't actually use this 
build.xml file after this point though. So Mavne and build.xml will 
both generate  approvximately the same jar contents, but any 
customization to the maven jar goals (via pre/postGoals in the 
maven.xml) will result in contents being different in the long run.
In light of this, would it be useful for developers to be using Maven 
as well - in case an updated project.xml generates a changed build.xml? 
Or is the build.xml file always updated in CVS if the project.xml file 
is? (In other words, would a developer ever _need_ to run Maven to have 
the latest Ant build file, or is the latest build.xml in CVS always 
current with project.xml?)

But for people who want to use Maven (for some reason or other), 
there could be instructions that say exactly which files/directories 
need to be checked out from jakarta-commons in addition to the 
jakarta-commons/math module.
Yes, sensible. Ultimately I wish that the gloabal project contents 
were not housed in the jakarta-commons root directory, but in another 
"subproject" directory, then the two projects could be checked out in 
the same directory (eclipse workspace for instance) and easily built 
without having to get all the other commons projects. This would be 
something to bring up to everyone on the developers list. Then all 
project.xml would do something like

../site/project.xml

All that wold be required to checkout and build any project would be:

cvs checkout site

cvs checkout math

This would also keep all the site dependencies well organized would it 
not?
That's a great idea; it makes complete sense to me. This would still 
preserve consistency among Commons projects, while making the necessary 
steps to check out a single sub-project a little more concise. Probably 
a much better idea in the long run than just maintaining a special 
project.xml file without the parent directory dependencies.

Brent Redeker

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


[all] Project consistency (was Re: [math] Re: Getting started questions)

2004-02-02 Thread Martin Cooper
On Mon, 2 Feb 2004, Phil Steitz wrote:

> Paul Libbrecht wrote:
> > Ah, this question is interesting.
> >
> > I recently removed the dependency on the ../project.xml in Jelly
> > because I think checking out a module should produce free-standing  things.
> > Before being a commons-committer, I always patched the project.xml so
> > as to get rid of the project inheritance (which is only for a handful
> > of ownership information for the website anyways).
>
> These are good points. I would be +1 for doing this for [math].

-1

This seems like a bad idea to me. The whole point of doing this was to get
some consistency across Commons components. Remember that Commons is ONE
Jakarta subproject.  It is not, and was never intended to be, a bunch of
independent projects. As such, it should have a consistent build system,
and a consistent web site. That is not going to happen if all of the
components start breaking away from the commonality we have managed to
introduce so far.

--
Martin Cooper


>
> 
>
> >
> > Also, why do you need jakarta-commons/xdocs/
>
> My mistake. All is actually needed is jakarta-commons/incl_nav.xml.
>
> Phil
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [math] Re: Getting started questions

2004-02-02 Thread Phil Steitz
Paul Libbrecht wrote:
Ah, this question is interesting.

I recently removed the dependency on the ../project.xml in Jelly  
because I think checking out a module should produce free-standing  things.
Before being a commons-committer, I always patched the project.xml so  
as to get rid of the project inheritance (which is only for a handful  
of ownership information for the website anyways).
These are good points. I would be +1 for doing this for [math].



Also, why do you need jakarta-commons/xdocs/
My mistake. All is actually needed is jakarta-commons/incl_nav.xml.

Phil

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [math] Re: Getting started questions

2004-01-31 Thread Brent Redeker
On Jan 31, 2004, at 2:43 PM, Phil Steitz wrote:
Brent Redeker wrote:
Hi,
Yesterday, I had contacted the mailing lists saying I was interested  
in helping out with the Commons Math project. I received a helpful  
response from Mark Diggory. However, I now have some quick questions.  
(Please forgive me if the answer is already somewhere obvious.)
I love Eclipse, which also seems to be the preferred IDE for the  
project.
There is no dependency on Eclipse.
You are correct - but I already use it and it seems to be what several  
others are using. So it just seemed to be a logical choice.

I already figured out how to check out the CVS HEAD as a new
Eclipse project. I also disabled the project's standard build  
configuration, and switched to using the Math build.xml file with Ant  
inside Eclipse. However, Eclipse still flags many things as errors -  
all related to package declarations or finding classes. Does anybody  
know how to turn off these errors?
Most likely what Eclipse is complaining about is missing external  
dependencies.  I am not an Eclipse expert (actually just switched over  
from NetBeans a few weeks ago), but what I do is use
Project Properties -> Java Build Path -> Libraries -> Add External Jars
to add the jars including the missing class definitions.  I symlink  
the .maven/repository so the Eclipse directory browser can see the  
jars and just link directly to the jars in the local maven repo (once  
you get the maven build working, they will be there).  The  
dependencies are enumerated in project.xml.  I don't know if this is  
the best way to do it but it works4me.
Actually, my problem was that I was using a default Eclipse project,  
and the source directory was just set to the project directory. But  
inside that was the src/ directory, then java/ (or experimental or  
test), and THEN the actual Java package directory hierarchy. This made  
Eclipse think the declared packages were at odds with the actual  
directory structure. Michael Gloegl answered this in an earlier reply  
(when I mistakenly omitted the [math] from my subject line) - I just  
had to explicitly define the source directories for Eclipse.

As to your suggestion of the Add External Jars, so far I had not run  
into problems, since Ant was automatically fetching the necessary jars  
for me. However, it sounds like I'm best off getting Maven working;  
then I'll just try your system.

Also, how does one set up a project to build with Maven? I have Maven  
installed, but I only checked out the Commons Math code from CVS. The  
project.xml file appears to want a project.xml file in the parent  
directory, so I am assuming that file is part of Jakarta Commons in  
general. So what additional modules should I be checking out?
All of Commons? Is there a way to just check out the general stuff  
and the Commons Math stuff, without checking out all of the other  
projects? (I am kind of new to CVS as well, so maybe this is an  
ignorant question...)
You are correct, for math's maven build to work, you need to have  
jakarta-commons/project.xml and you need your math checkout to be  
inside the jakarta-commons directory.  If you don't want to co the  
entire jakarta-commons module, you can just co  
jakarta-commons/project.xml (see the full command here:  
http://jakarta.apache.org/site/cvsindex.html), then cd to  
jakarta-commons and co math from there, or you could even just create  
the jakarta-commons directory manually and grab the file from  
http://cvs.apache.org/viewcvs.cgi/*checkout*/jakarta-commons/ 
project.xml. You will also need jakarta-commons/xdocs to build the web  
site.
Ah ha! I kind of suspected I'd have to something like that. I just  
wasn't sure exactly what stuff I'd all actually need. Thanks for the  
heads-up on needing jakarta-commons/xdocs, too.

I don't know how to get Eclipse to do all of this. I just use the  
command line and point Eclipse at the directories.

Hope this helps.

Phil
It sure did help, Phil, thanks a lot for your time. Hope my  
"newbie-ness" isn't too exasperating.

Brent

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


[math] Re: Getting started questions

2004-01-31 Thread Phil Steitz
Brent Redeker wrote:
Hi,

Yesterday, I had contacted the mailing lists saying I was interested in 
helping out with the Commons Math project. I received a helpful response 
from Mark Diggory. However, I now have some quick questions. (Please 
forgive me if the answer is already somewhere obvious.)

I love Eclipse, which also seems to be the preferred IDE for the 
project. 
There is no dependency on Eclipse.

I already figured out how to check out the CVS HEAD as a new
Eclipse project. I also disabled the project's standard build 
configuration, and switched to using the Math build.xml file with Ant 
inside Eclipse. However, Eclipse still flags many things as errors - all 
related to package declarations or finding classes. Does anybody know 
how to turn off these errors? 
Most likely what Eclipse is complaining about is missing external 
dependencies.  I am not an Eclipse expert (actually just switched over 
from NetBeans a few weeks ago), but what I do is use
Project Properties -> Java Build Path -> Libraries -> Add External Jars
to add the jars including the missing class definitions.  I symlink the 
.maven/repository so the Eclipse directory browser can see the jars and 
just link directly to the jars in the local maven repo (once you get the 
maven build working, they will be there).  The dependencies are enumerated 
in project.xml.  I don't know if this is the best way to do it but it 
works4me.

Also, how does one set up a project to build with Maven? I have Maven 
installed, but I only checked out the Commons Math code from CVS. The 
project.xml file appears to want a project.xml file in the parent 
directory, so I am assuming that file is part of Jakarta Commons in 
general. So what additional modules should I be checking out?
All of 
Commons? Is there a way to just check out the general stuff and the 
Commons Math stuff, without checking out all of the other projects? (I 
am kind of new to CVS as well, so maybe this is an ignorant question...)
You are correct, for math's maven build to work, you need to have 
jakarta-commons/project.xml and you need your math checkout to be inside 
the jakarta-commons directory.  If you don't want to co the entire 
jakarta-commons module, you can just co jakarta-commons/project.xml (see 
the full command here: http://jakarta.apache.org/site/cvsindex.html), then 
cd to jakarta-commons and co math from there, or you could even just 
create the jakarta-commons directory manually and grab the file from 
http://cvs.apache.org/viewcvs.cgi/*checkout*/jakarta-commons/project.xml. 
You will also need jakarta-commons/xdocs to build the web site.

I don't know how to get Eclipse to do all of this. I just use the command 
line and point Eclipse at the directories.

Hope this helps.

Phil



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]