ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Bodewig <bode...@apache.org>
Subject [DISC] details of task library concept
Date Tue, 22 May 2001 08:25:47 GMT
We've settled on

* allow tasks to be loaded from jars. tasks should be indicated by
  either xml file in TSK-INF/taskdefs.xml or manifest file.

and we've also agreed that these jars could also contain data types
and other pluggable components.

What we have not defined at this point is whether we should use 

1) Entries in the MANIFEST.MF

2) an XML file

3) something else

to provide Ant with all necessary information about the specific
library.

My preference here is to use an XML file and the syntax one would use
in a build file as well, i.e. use <taskdef> to define a task,
<typedef> to define a data type and so on.  This file should reside in
META-INF and I propose META-INF/antlib.xml.  The main reason is
consistency.


Other details to resolve are

* Will each task library be loaded with a class loader of its own to
avoid class-name or class-version clashes?

I'm not a class loader expert and can only hope that breaking JDK 1.1
compatibility will make the whole class loader business a bit
easier. At first glance, they should probably be separate.

* Will each task library be assigned to an XML-Namespace to avoid
task-name clashes?

IMHO, yes.  Maybe we should use the name of the jar file (without
extension) as the namespace prefix.

* The extension of the library file itself. 

".tsk" has been proposed, but this might put too much focus on tasks.
How about ".ant"?

* We've agreed to store documentation within the library itself -
where?

We shouldn't store formated docs but only the source XML files for the
documentation inside the libs IMHO - I'd put them in META-INF/doc
maybe with subdirectories for tasks and types so that a task
generating the documentation can easily sort them into categories.

* others?

Stefan

Mime
View raw message