At 11:09 11/12/00 -0600, [EMAIL PROTECTED] wrote:
>I have a few ideas for ant 2.0, and would like to know what everyone
>thinks. I have a protoype that does most of this - if there's enough
>interest I'll finish it up and submit it.
kewl. If you want I can check it into CVS as another proposal :)
>The biggest change is the ability to import one project from another. This
>gives you access to all of the properties and targets defined in that
>project, which can be accessed by using the colon as a namespace operator.
>For example, if your project depended on the xerces jar, and you wanted to
>make sure that jar was up to date before compiling against it, you could do
>this:
>
><project name="foo">
> <import name="xerces"/>
>
> <target name="compile" depends="xerces:jar">
> <javac classpath="${xerces:dist.jar}">
> ...
> </javac>
> </target>
></project>
I like that. That fits in well with the ideas I was trying to tie together
regarding a Workspace. A Workspace being a collection of related projects.
There is only one issue I have with this - it may unneccesarily restrictive
for developers. It could end up with one project relying too much on the
internal structure of another project. I guess we need some way to tell
other developers which parts are static and "public" and which are
"private" parts of project. What do you think ?
>Another change is to not instantiate task objects until right before
>they're executed. This allows us to define the task in the same script
>where we use it:
That is in the main ant and also in both the proposals ;)
>And finally, I've changed the "baseDir" attribute on project so that it can
>be either a directory or a jar (any URL, actually). This means that you can
>execute an antfile stored inside a jar, and have it load tasks stored in
>that jar. This gives us the "drop a jar in the right directory" mechanism
>for installing tasks.
very kewl !!! I never thought about it that way but I like ;)
>So all of this basically gives us an easy way to install new tasks on a
>system, and it does so without any new syntax, since everything is an ant
>file. It also gives us a uniform way of describing dependencies between
>projects, and paves the way for something like CJAN. IMHO, of course.
definetly sounds interesting - I would like to see inter project
dependencies discussed further thou.
Cheers,
Pete
*-----------------------------------------------------*
| "Faced with the choice between changing one's mind, |
| and proving that there is no need to do so - almost |
| everyone gets busy on the proof." |
| - John Kenneth Galbraith |
*-----------------------------------------------------*