ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Donald <>
Subject Lions, Import, and ProjectRef, oh my !
Date Sun, 10 Jun 2001 06:06:25 GMT

I just started playing with model a bit and I was curious on opinions on a
few things. I think it has been largely agreed that every project has a
"frame" (like ExecutionFrame mutant). This frame contains things like
taskdefs, datadefs (+ other types) and other project names (if we implement
that). It *may* also contain properties/state depending on further

Each project file consists of basically the following bits.
1. projectrefs (if implemented)
2. imports of libraries (ie like taskdef but importing all types in library)
3. implicit tasks (like properties and anything else we allow at top-level)
4. targets (that contain tasks)

I think that it would useful to force the above order in build file. So if
feature is present it must be in above order.

So a sample may be something like

<project ... >
  <projectref name="foo" location="..." />

  <import library="foo.tsk"/>
  <import library="jdk.tsk" name="javac" type="task"/>
  <import library="core.tsk" name="pattern" type="data-type"/>

  <property name="prop" value="..."/>

  <target name="main">


Also I am curious about we should resolve conflicts in names of types (like
multiple tasks named "javac"). Should we do it in same way java does it?
(ie if conflict and no explicit imports then generate an error, If there is
just one explicit import then use that). Should we do it by order? (ie last
defined is the "winner"). Or some other way?

Also another point is should we import any types by default? Or should we
ask people to do something like following?

  <import library="core.tsk"/>



| "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               |

View raw message