public void execute()

in core-it-support/core-it-plugins/maven-it-plugin-expression/src/main/java/org/apache/maven/plugin/coreit/EvalMojo.java [126:170]


    public void execute() throws MojoExecutionException, MojoFailureException {
        if (outputFile == null) {
            throw new MojoFailureException("Path name for output file has not been specified");
        }

        /*
         * NOTE: We don't want to test path translation here.
         */
        if (!outputFile.isAbsolute()) {
            outputFile = new File(basedir, outputFile.getPath()).getAbsoluteFile();
        }

        getLog().info("[MAVEN-CORE-IT-LOG] Creating output file: " + outputFile);

        Properties expressionProperties = new Properties();

        if (expressionList != null && expressionList.length() > 0) {
            expressions = expressionList.split(",");
        }
        if (expressions != null && expressions.length > 0) {
            Map contexts = new HashMap();
            contexts.put("project", project);
            contexts.put("executedProject", executedProject);
            contexts.put("pom", project);
            contexts.put("settings", settings);
            contexts.put("session", session);
            contexts.put("localRepositoryBasedir", localRepositoryBasedir);

            for (String expression : expressions) {
                Map values = ExpressionUtil.evaluate(expression, contexts);
                for (Object key : values.keySet()) {
                    Object value = values.get(key);
                    PropertyUtil.store(expressionProperties, key.toString().replace('/', '.'), value);
                }
            }
        }

        try {
            PropertyUtil.write(expressionProperties, outputFile);
        } catch (IOException e) {
            throw new MojoExecutionException("Output file could not be created: " + outputFile, e);
        }

        getLog().info("[MAVEN-CORE-IT-LOG] Created output file: " + outputFile);
    }