Example usage for org.apache.maven.project MavenProject getPlugin

List of usage examples for org.apache.maven.project MavenProject getPlugin

Introduction

In this page you can find the example usage for org.apache.maven.project MavenProject getPlugin.

Prototype

public Plugin getPlugin(String pluginKey) 

Source Link

Usage

From source file:com.liferay.ide.maven.core.LiferayMavenProjectConfigurator.java

License:Open Source License

private IFolder warSourceDirectory(final IProject project, final MavenProject mavenProject) {
    IFolder retval = null;//from   ww  w  .ja v  a 2 s . co m

    final Xpp3Dom warPluginConfiguration = (Xpp3Dom) mavenProject.getPlugin(MAVEN_WAR_PLUGIN_KEY)
            .getConfiguration();

    if (warPluginConfiguration != null) {
        final Xpp3Dom[] warSourceDirs = warPluginConfiguration.getChildren("warSourceDirectory");

        if (warSourceDirs != null && warSourceDirs.length > 0) {
            final String resourceLocation = warSourceDirs[0].getValue();
            retval = project.getFolder(resourceLocation);
        }
    }

    if (retval == null) {
        /*
         * if no explicit warSourceDirectory set we assume the default warSource directory
         * ${basedir}/src/main/webapp refer to http://maven.apache.org/plugins/maven-war-plugin/war-mojo.html
         * for more information
         */
        retval = project.getFolder(WAR_SOURCE_FOLDER);
    }

    return retval;
}

From source file:com.liferay.ide.maven.core.MavenUtil.java

License:Open Source License

public static Xpp3Dom getLiferayMavenPluginConfig(MavenProject mavenProject) {
    Xpp3Dom retval = null;/*  ww  w. j  a v  a 2  s  .c  om*/

    if (mavenProject != null) {
        final Plugin plugin = mavenProject.getPlugin(ILiferayMavenConstants.LIFERAY_MAVEN_PLUGIN_KEY);

        if (plugin != null) {
            retval = (Xpp3Dom) plugin.getConfiguration();
        }
    }

    return retval;
}

From source file:com.liferay.ide.maven.core.MavenUtil.java

License:Open Source License

public static Plugin getPlugin(IMavenProjectFacade facade, final String pluginKey, IProgressMonitor monitor)
        throws CoreException {
    Plugin retval = null;/*from  ww  w  .ja  va 2  s .  c  o m*/
    boolean loadedParent = false;
    final MavenProject mavenProject = facade.getMavenProject(monitor);

    if (mavenProject != null) {
        retval = mavenProject.getPlugin(pluginKey);
    }

    if (retval == null) {
        // look through all parents to find if the plugin has been declared

        MavenProject parent = mavenProject.getParent();

        if (parent == null) {
            try {
                if (loadParentHierarchy(facade, monitor)) {
                    loadedParent = true;
                }
            } catch (CoreException e) {
                LiferayMavenCore.logError("Error loading parent hierarchy", e);
            }
        }

        while (parent != null && retval == null) {
            retval = parent.getPlugin(pluginKey);

            parent = parent.getParent();
        }
    }

    if (loadedParent) {
        mavenProject.setParent(null);
    }

    return retval;
}

From source file:com.puppetlabs.geppetto.forge.maven.plugin.AbstractForgeTestMojo.java

License:Open Source License

private void finalizeMojoConfiguration(MojoExecution mojoExecution) {
    MojoDescriptor mojoDescriptor = mojoExecution.getMojoDescriptor();
    MavenProject project = getMavenSession().getCurrentProject();
    PluginDescriptor pluginDescriptor = mojoDescriptor.getPluginDescriptor();
    Plugin plugin = project.getPlugin(pluginDescriptor.getPluginLookupKey());
    pluginDescriptor.setPlugin(plugin);//from  w w w .  j  ava2s  . co m

    Xpp3Dom executionConfiguration = mojoExecution.getConfiguration();
    if (executionConfiguration == null)
        executionConfiguration = new Xpp3Dom("configuration");

    Xpp3Dom defaultConfiguration = MojoDescriptorCreator.convert(mojoDescriptor);
    Xpp3Dom finalConfiguration = new Xpp3Dom("configuration");

    if (mojoDescriptor.getParameters() != null) {
        for (Parameter parameter : mojoDescriptor.getParameters()) {
            Xpp3Dom parameterConfiguration = executionConfiguration.getChild(parameter.getName());

            if (parameterConfiguration == null)
                parameterConfiguration = executionConfiguration.getChild(parameter.getAlias());

            Xpp3Dom parameterDefaults = defaultConfiguration.getChild(parameter.getName());
            parameterConfiguration = Xpp3Dom.mergeXpp3Dom(parameterConfiguration, parameterDefaults,
                    Boolean.TRUE);

            if (parameterConfiguration != null) {
                parameterConfiguration = new Xpp3Dom(parameterConfiguration, parameter.getName());

                if (StringUtils.isEmpty(parameterConfiguration.getAttribute("implementation"))
                        && StringUtils.isNotEmpty(parameter.getImplementation())) {
                    parameterConfiguration.setAttribute("implementation", parameter.getImplementation());
                }
                finalConfiguration.addChild(parameterConfiguration);
            }
        }
    }

    if (plugin != null) {
        String goal = mojoExecution.getGoal();
        for (PluginExecution pe : plugin.getExecutions()) {
            if (pe.getGoals().contains(goal)) {
                Xpp3Dom execConfig = (Xpp3Dom) pe.getConfiguration();
                if (execConfig != null)
                    finalConfiguration = Xpp3Dom.mergeXpp3Dom(execConfig, finalConfiguration);
                break;
            }
        }
    }
    mojoExecution.setConfiguration(finalConfiguration);
}

From source file:fr.brouillard.oss.jgitver.JGitverUtils.java

License:Apache License

/**
 * Calculates the version to use of the given project. 
 * @param rootProject the root project for which a version has to be calculated
 * @param properties a property object that will be filled with additional information 
 * @param logger a logger to use//  w w  w  .ja v a 2s .c om
 * @return a non null container for the version 
 * @throws IOException if an error ocurred while calculating the version
 */
public static JGitverVersion calculateVersionForProject(MavenProject rootProject, Properties properties,
        Logger logger) throws IOException {
    JGitverVersion jGitverVersion = null;

    logger.debug("using " + EXTENSION_PREFIX + " on directory: " + rootProject.getBasedir());
    try (GitVersionCalculator gitVersionCalculator = GitVersionCalculator.location(rootProject.getBasedir())) {
        Plugin plugin = rootProject.getPlugin("fr.brouillard.oss:jgitver-maven-plugin");

        JGitverPluginConfiguration pluginConfig = new JGitverPluginConfiguration(
                Optional.ofNullable(plugin).map(Plugin::getConfiguration).map(Xpp3Dom.class::cast));

        gitVersionCalculator.setMavenLike(pluginConfig.mavenLike())
                .setAutoIncrementPatch(pluginConfig.autoIncrementPatch())
                .setUseDistance(pluginConfig.useCommitDistance())
                .setUseGitCommitId(pluginConfig.useGitCommitId())
                .setGitCommitIdLength(pluginConfig.gitCommitIdLength()).setUseDirty(pluginConfig.useDirty())
                .setNonQualifierBranches(
                        pluginConfig.nonQualifierBranches().stream().collect(Collectors.joining(",")));

        jGitverVersion = new JGitverVersion(gitVersionCalculator);
        fillPropertiesFromMetadatas(properties, jGitverVersion, logger);
    } catch (Exception ex) {
        throw new IOException(ex.getMessage(), ex);
    }

    return jGitverVersion;
}

From source file:io.fabric8.maven.core.util.MavenUtil.java

License:Apache License

public static boolean hasPlugin(MavenProject project, String plugin) {
    return project.getPlugin(plugin) != null;
}

From source file:io.fabric8.maven.generator.api.FromSelector.java

License:Apache License

public boolean isRedHat() {
    MavenProject project = context.getProject();
    Plugin plugin = project.getPlugin("io.fabric8:fabric8-maven-plugin");
    if (plugin == null) {
        // Can happen if not configured in a build section but only in a dependency management section
        return false;
    }/*from w  w w  .  ja v a2  s.c om*/
    String version = plugin.getVersion();
    return REDHAT_VERSION_PATTERN.matcher(version).matches();
}

From source file:io.fabric8.maven.generator.springboot.SpringBootGenerator.java

License:Apache License

private boolean isSpringBootRepackage() {
    MavenProject project = getProject();
    Plugin plugin = project.getPlugin(SPRING_BOOT_MAVEN_PLUGIN_GA);
    if (plugin != null) {
        Map<String, PluginExecution> executionsAsMap = plugin.getExecutionsAsMap();
        if (executionsAsMap != null) {
            for (PluginExecution execution : executionsAsMap.values()) {
                List<String> goals = execution.getGoals();
                if (goals.contains("repackage")) {
                    log.verbose(/*from  w  w w. jav  a2  s  . co  m*/
                            "Using fat jar packaging as the spring boot plugin is using `repackage` goal execution");
                    return true;
                }
            }
        }
    }
    return false;
}

From source file:io.fabric8.maven.generator.vertx.VertxGenerator.java

License:Apache License

private boolean isUsingFatJarPlugin() {
    MavenProject project = getProject();
    Plugin shade = project.getPlugin(SHADE_PLUGIN_GA);
    Plugin vertx = project.getPlugin(VERTX_MAVEN_PLUGIN_GA);
    return shade != null || vertx != null;
}

From source file:io.fabric8.vertx.maven.plugin.utils.MojoUtils.java

License:Apache License

public void buildVertxArtifact(MavenProject project, MavenSession mavenSession,
        BuildPluginManager buildPluginManager) throws MojoExecutionException {

    Plugin vertxMavenPlugin = project.getPlugin(VERTX_PACKAGE_PLUGIN_KEY);

    if (vertxMavenPlugin == null) {
        throw new MojoExecutionException("Plugin :" + VERTX_PACKAGE_PLUGIN_KEY + " not found or configured");
    }//from   w w w  .j a v  a 2 s . com

    executeMojo(vertxMavenPlugin, goal(GOAL_PACKAGE), configuration(),
            executionEnvironment(project, mavenSession, buildPluginManager));
}