src/main/java/com/ruleoftech/markdown/page/generator/plugin/MdPageGeneratorMojo.java
@Override
    public void execute() throws MojoExecutionException {
        // First, if filtering is enabled, perform that using the Maven magic
        if (applyFiltering) {
            performMavenPropertyFiltering(new File(inputDirectory), filteredOutputDirectory, getInputEncoding());
            inputDirectory = filteredOutputDirectory.getAbsolutePath();
        }

        getLog().info("Pre-processing markdown files from input directory: " + inputDirectory);
        preprocessMarkdownFiles(new File(inputDirectory));

        if (!markdownDTOs.isEmpty()) {
            getLog().info("Process Pegdown extension options");
            int options = getPegdownExtensions(pegdownExtensions);
            final Map<String, Attributes> attributesMap = processAttributes(attributes);

            getLog().info("Parse Markdown to HTML");
            processMarkdown(markdownDTOs, options, attributesMap);
        }

        // FIXME: This will possibly overwrite any filtering updates made in the maven property filtering step above
        if (StringUtils.isNotEmpty(copyDirectories)) {
            getLog().info("Copy files from directories");
            for (String dir : copyDirectories.split(",")) {
                for ( Entry<String, String> copyAction : getFoldersToCopy(inputDirectory, outputDirectory, dir).entrySet()){
                    copyFiles(copyAction.getKey(), copyAction.getValue());
                }
            }
        }
    }
@Override
    public void execute() throws MojoExecutionException {
        // First, if filtering is enabled, perform that using the Maven magic
        if (applyFiltering) {
            performMavenPropertyFiltering(new File(inputDirectory), filteredOutputDirectory, getInputEncoding());
            inputDirectory = filteredOutputDirectory.getAbsolutePath();
        }

        getLog().info("Pre-processing markdown files from input directory: " + inputDirectory);
        preprocessMarkdownFiles(new File(inputDirectory));

        if (!markdownDTOs.isEmpty()) {
            getLog().info("Process Pegdown extension options");
            int options = getPegdownExtensions(pegdownExtensions);
            final Map<String, Attributes> attributesMap = processAttributes(attributes);

            getLog().info("Parse Markdown to HTML");
            processMarkdown(markdownDTOs, options, attributesMap);
        }

        // FIXME: This will possibly overwrite any filtering updates made in the maven property filtering step above
        if (StringUtils.isNotEmpty(copyDirectories)) {
            getLog().info("Copy files from directories");
            for (String dir : copyDirectories.split(",")) {
                for ( Entry<String, String> copyAction : getFoldersToCopy(inputDirectory, outputDirectory, dir).entrySet()){
                    copyFiles(copyAction.getKey(), copyAction.getValue());
                }
            }
        }
    }
Execute the maven plugin.

@throws MojoExecutionException Something went wrong