views:

3736

answers:

4

Sorry, I'm not terribly experienced with Ant.

I like the eclipse "Export ant buildfile" function, but I need to insert a few custom tasks (Copying files, calculating checksums that are used at runtime, etc).

How do I integrate custom ant tasks with the antfile that Eclipse exports? Also, once I've done so, will the internal build (Run...) pick it up or will I always have to use the external ant file to build from now on?

Oh, and I don't want to edit the build.xml that is exported from Eclipse, because I'd like to be able to regenerate it later.

Edit/Update:

It took me a while to figure out what was going on--so I thought I'd put some notes here to clarify.

When you create a new ant file in your directory and put <?eclipse.ant.import ?> on the first line of your custom ant script (I called mine test.xml), next time you export the buildfile from Eclipse into that directory, it'll see that tag and add <import file="test.xml"/>

With that Import, the targets in your "Custom" file (test.xml) become valid targets in your exported build.xml (or whatever name you chose when you exported it).

After this, anytime you select "build.xml" in Eclipse, the targets pane will also include targets from "test.xml"

Also, after that, you can go into your project properties/Builders and add a new builder of type "Ant Build", then select targets to use for building, clean, etc.

+1  A: 

If you write your own Ant script, you can write your own targets that use the Ant task to delegate to the generated build.xml.

Also, you can configure a project's 'builders' (project properties » Builders) to run any something different when you build the project, manually or automatically.

Peter Hilton
A: 

You can have a separate ant build file for these tasks. Thats all you need.

Rob Ottaway
+6  A: 

The ant export filter will include any xml file in the same directory which has the special

<?eclipse.ant.import?>

element as its first child, like this example. See eclipse2ant for more info.

JesperE
Geocities is gone, so find the example [here](http://timealias.bplaced.net/eclipse2ant/doc/build-user.xml) and the site [here](http://timealias.bplaced.net/eclipse2ant/)
Derek Thurn
A: 

PDE has support for custom callbacks from the generated build.xml into your own custom ant script.

Copy the file "templates/plugins/customBuildCallbacks.xml" from the org.eclipse.pde.build in your eclipse install, and set "customBuildCallbacks=true" in your build.properties file.

See also the Eclipse help page

Andrew Niefer