Example usage for org.apache.commons.lang3 SystemUtils JAVA_CLASS_PATH

List of usage examples for org.apache.commons.lang3 SystemUtils JAVA_CLASS_PATH

Introduction

In this page you can find the example usage for org.apache.commons.lang3 SystemUtils JAVA_CLASS_PATH.

Prototype

String JAVA_CLASS_PATH

To view the source code for org.apache.commons.lang3 SystemUtils JAVA_CLASS_PATH.

Click Source Link

Document

The java.class.path System Property.

Usage

From source file:com.norconex.collector.http.crawler.ExecutionTest.java

private int runCollector(String action, Properties configVars) throws IOException, XMLStreamException {

    // Config + variables
    if (configVars != null) {
        try (Writer w = new FileWriter(varsFile)) {
            configVars.store(w, "");
        }/* w  ww  .j  av  a  2 s.  c o m*/
        try (InputStream is = getClass().getResourceAsStream("ExecutionTest-config.xml")) {
            FileUtils.copyInputStreamToFile(is, configFile);
        }
    }

    Project project = new Project();
    project.setBaseDir(getTempFolder().getRoot());
    project.init();
    DefaultLogger logger = new DefaultLogger();
    project.addBuildListener(logger);
    logger.setOutputPrintStream(System.out);
    logger.setErrorPrintStream(System.err);
    // Change to MSG_INFO to get more details on the console
    logger.setMessageOutputLevel(Project.MSG_DEBUG);
    //        System.setOut(new PrintStream(new DemuxOutputStream(project, false)));
    //        System.setErr(new PrintStream(new DemuxOutputStream(project, true)));
    project.fireBuildStarted();

    System.out.println("\"" + action + "\" in new JVM.");
    Throwable caught = null;
    int retValue = 0;
    try {
        Java javaTask = new Java();
        javaTask.setTaskName("runjava");
        javaTask.setProject(project);
        javaTask.setFork(true);
        javaTask.setFailonerror(true);
        javaTask.setClassname(HttpCollector.class.getName());
        javaTask.setClasspath(new Path(project, SystemUtils.JAVA_CLASS_PATH));
        String args = "-a " + action + " -c \"" + configFile.getAbsolutePath() + "\" -v \"" + varsFile + "\"";
        javaTask.getCommandLine().createArgument().setLine(args);
        javaTask.init();
        retValue = javaTask.executeJava();
        System.out.println("Done. Return code: " + retValue);

    } catch (BuildException e) {
        caught = e;
        retValue = -1;
    }
    project.log("Finished");
    project.fireBuildFinished(caught);

    return retValue;
}