1. Make a build.xml file like as follows:
<?xml version="1.0" encoding="UTF-8"?> <project name="HelloWorld" default="hello"> <target name="hello"> <echo>Hello World!</echo> </target> <target name="myTarget"> <echo>My target executed</echo> </target> </project>
2. Download a jar file used for executing the Ant file named “ant.jar”
Made a java method to execute the ant task:
/** * To execute a target specified in the Ant build.xml file * @param buildXmlFileFullPath * @param target */ public static boolean executeAntTask(String buildXmlFileFullPath, String target) { boolean success = false; DefaultLogger consoleLogger = getConsoleLogger(); // Prepare Ant project Project project = new Project(); File buildFile = new File(buildXmlFileFullPath); project.setUserProperty("ant.file", buildFile.getAbsolutePath()); project.addBuildListener(consoleLogger); // Capture event for Ant script build start / stop / failure try { project.fireBuildStarted(); project.init(); ProjectHelper projectHelper = ProjectHelper.getProjectHelper(); project.addReference("ant.projectHelper", projectHelper); projectHelper.parse(project, buildFile); // If no target specified then default target will be executed. String targetToExecute = (target != null && target.trim().length() > 0) ? target.trim() : project.getDefaultTarget(); project.executeTarget(targetToExecute); project.fireBuildFinished(null); success = true; } catch (BuildException buildException) { project.fireBuildFinished(buildException); throw new RuntimeException("!!! Unable to restart the IEHS App !!!", buildException); } return success; } /** * Logger to log output generated while executing ant script in console * @return */ private static DefaultLogger getConsoleLogger() { DefaultLogger consoleLogger = new DefaultLogger(); consoleLogger.setErrorPrintStream(System.err); consoleLogger.setOutputPrintStream(System.out); consoleLogger.setMessageOutputLevel(Project.MSG_INFO); return consoleLogger; }