Hi, I'm
having a problem of inconsistent behavior when I'm using ANT for a build
process. When
I'm running a certain build process from a command line console the build
process succeeds. But when I'm running the same build process from code (using
the code snippet below) the same process fails… The
build.xml file I'm talking about has a target called "generate" which
doesn’t require any input parameters. All the required info exists in the
build.xml file. My
question is if anyone encountered such inconsistencies? Is
the code I'm using correct? What
could it be that may have influence on the build process when running it from
code VS running the same process from a command line console? Any
suggestions are appreciated.
/**
* activate an ant build process
* @param buildFilePath a path to an ANT build xml file
* @param userProperties a map of user properties to be planted into the
ANT xml file
* @param target A target to be activated in the ANT build xml file
* @throws Exception
*/
public static void Activate(String buildFilePath, String target) throws
Exception{
File
buildFile = new File(buildFilePath);
Project
project = new Project();
project.setUserProperty("ant.file", buildFile.getAbsolutePath());
DefaultLogger consoleLogger = new DefaultLogger();
consoleLogger.setErrorPrintStream(System.err);
consoleLogger.setOutputPrintStream(System.out);
consoleLogger.setMessageOutputLevel(Project.MSG_INFO);
project.addBuildListener(consoleLogger);
try {
project.fireBuildStarted();
project.init();
ProjectHelper helper = ProjectHelper.getProjectHelper();
project.addReference("ant.projectHelper", helper);
helper.parse(project, buildFile);
if(target==null)
project.executeTarget(project.getDefaultTarget());
else
project.executeTarget(target);
project.fireBuildFinished(null);
} catch
(BuildException e) {
project.fireBuildFinished(e);
throw new
Exception("Failed while creating a new service workspace.",e);
}
catch(Exception e){
throw new
Exception("Failed while creating a new service workspace.",e);
}
} Asaf
Lahav VP
R&D, Prima Grid LTD. Cellular:
972-54-4717955 Phone:
972-3-6540255 Fax:
972-3-6540254 |
- inconsistent behavior when running from Command line console V... Asaf Lahav