VPP was originally developed to be a javac preprocessor, but on suggestion by Bill Burton, I broke out the preprocessor as a filter for general purpose use. In addition, the latest release is now BSD licensed, includes a FAQ and a few more examples. See http://vpp.sourceforge.net.
Both Hiroaki's <velocity> task and VPP have a good amount of overlap. Following is my summarization of the differences between them. This is not a critique, but simply to help those trying to understand the differences between the two tools.: - The core fuctionality of <velocity> is implemented as a task with a subset of the <copy> task's functionality. - The core functionality of VPP is implemented as a FilterChain and can be used by any task that supports filter chains. - <vpp> extends the org.apache.tools.ant.taskdefs.Copy. Therefore, <vpp> provides a superset of the <copy> functionality, not a subset. - Both tools support passing properties and instances to the VelocityContext. - <velocity> populates the context with only those properties that are explicitly listed and satisfying an optional condition. - VPP populates the context with the current project instance automatically, giving access to all project properties implicitly. - <velocity> uses a single instance of Velocity for all tasks. - VPP initializes a new VelocityEngine for each individual task to allow each task to have a custom configuration. - <velocity> initializes the Velocity runtime from a property file. - VPP initializes each VelocityEngine using properties defined by the task. > From: Hiroaki Nakamura [mailto:[EMAIL PROTECTED] > Do you plan to submit your work to included in Ant project? If yes, > it might be better to merge both features and implementations. I have offered VPP to the Ant Project in the past and I am happy to make all or part of it available now. But I also agree with the sentiment that Ant is growing very large. To that end, I am going to request in a separate email that VPP be listed as an Ant Related Project. I'd also be happy to work with you on merging our ideas together to create an even more flexible and easy to use tool. didge -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>