Oracle使用Ant从Java调用

时间:2013-04-12 06:45:26

标签: java ant soa

我有一个用于从Java部署Oracle SOA组合的用例。为此,我使用Apache ANT API从我的java代码中调用ant-sca-package.xml ant文件。

    File buildFile = new File("/xyz/fmwhome/AS11gR1SOA/bin/ant-sca-compile.xml");
    Project p = new Project();        
    p.setUserProperty("ant.file", buildFile.getAbsolutePath());             

    DefaultLogger consoleLogger = new DefaultLogger();
    consoleLogger.setErrorPrintStream(System.err);
    consoleLogger.setOutputPrintStream(System.out);
    consoleLogger.setMessageOutputLevel(Project.MSG_INFO);
    p.addBuildListener(consoleLogger);

    try {
            p.fireBuildStarted();
            p.init();
            ProjectHelper helper = ProjectHelper.getProjectHelper();
            p.addReference("ant.projectHelper", helper);
            helper.parse(p, buildFile);
            p.setProperty("scac.input", "/xyz/Sample/Sample/composite.xml");            
            p.executeTarget(p.getDefaultTarget()); 
            p.fireBuildFinished(null);
    } catch (BuildException e) {
            p.fireBuildFinished(e);
    }

我看到以下错误。

  

/xyz/fmwhome/AS11gR1SOA/bin/ant-sca-compile.xml:201:   /xyz/fmwhome/AS11gR1SOA/bin/${env.JAVA_HOME}/lib not found。

我是否需要从我的代码中将ant文件所需的所有jar添加到classpath中?我已经将它们添加到jdeveloper中项目的库和classpath部分。

不确定我错过了什么。请提供您的意见。

提前致谢。

0 个答案:

没有答案