Search in sources :

Example 6 with Plugin

use of org.apache.maven.model.Plugin in project felix by apache.

the class SCRDescriptorMojo method getBundlePluginConfiguration.

private String getBundlePluginConfiguration(final String key) {
    String value = null;
    Plugin bundlePlugin = this.getBundlePlugin();
    if (bundlePlugin != null) {
        final Xpp3Dom config = (Xpp3Dom) bundlePlugin.getConfiguration();
        if (config != null) {
            final Xpp3Dom instructionsConfig = config.getChild(BUNDLE_PLUGIN_INSTRUCTIONS);
            if (instructionsConfig != null) {
                final Xpp3Dom keyConfig = instructionsConfig.getChild(key);
                if (keyConfig != null) {
                    return keyConfig.getValue();
                }
            }
        }
    }
    return value;
}
Also used : Xpp3Dom(org.codehaus.plexus.util.xml.Xpp3Dom) Plugin(org.apache.maven.model.Plugin)

Example 7 with Plugin

use of org.apache.maven.model.Plugin in project sling by apache.

the class LaunchpadPluginLifecycleParticipant method afterProjectsRead.

@Override
public void afterProjectsRead(MavenSession session) throws MavenExecutionException {
    try {
        Map<String, MavenProject> projectMap = new HashMap<String, MavenProject>();
        for (MavenProject project : session.getProjects()) {
            projectMap.put(project.getGroupId() + ":" + project.getArtifactId() + ":" + project.getVersion(), project);
        }
        for (MavenProject project : session.getProjects()) {
            for (Plugin plugin : project.getBuild().getPlugins()) {
                if (plugin.getArtifactId().equals(PLUGIN_ID)) {
                    BundleListDependencyAdder performer = new BundleListDependencyAdder(session, project, plugin);
                    performer.addDependencies();
                }
            }
        }
    } catch (Exception e) {
        throw new MavenExecutionException("Unable to determine launchpad plugin-based dependencies", e);
    }
    super.afterProjectsRead(session);
}
Also used : MavenExecutionException(org.apache.maven.MavenExecutionException) MavenProject(org.apache.maven.project.MavenProject) HashMap(java.util.HashMap) XmlPullParserException(org.codehaus.plexus.util.xml.pull.XmlPullParserException) IOException(java.io.IOException) MojoExecutionException(org.apache.maven.plugin.MojoExecutionException) MavenExecutionException(org.apache.maven.MavenExecutionException) Plugin(org.apache.maven.model.Plugin)

Example 8 with Plugin

use of org.apache.maven.model.Plugin in project sling by apache.

the class DependencyLifecycleParticipant method afterProjectsRead.

@Override
public void afterProjectsRead(final MavenSession session) throws MavenExecutionException {
    final Environment env = new Environment();
    env.artifactHandlerManager = artifactHandlerManager;
    env.resolver = resolver;
    env.logger = logger;
    env.session = session;
    logger.debug("Searching for project leveraging plugin '" + PLUGIN_ID + "'...");
    for (final MavenProject project : session.getProjects()) {
        // consider all projects where this plugin is configured
        Plugin plugin = project.getPlugin(PLUGIN_ID);
        if (plugin != null) {
            logger.debug("Found project " + project + " leveraging " + PLUGIN_ID + ".");
            final ProjectInfo info = new ProjectInfo();
            info.plugin = plugin;
            info.project = project;
            env.modelProjects.put(project.getGroupId() + ":" + project.getArtifactId(), info);
        }
    }
    new ModelPreprocessor().addDependencies(env);
}
Also used : MavenProject(org.apache.maven.project.MavenProject) ProjectInfo(org.apache.sling.maven.slingstart.ModelPreprocessor.ProjectInfo) Environment(org.apache.sling.maven.slingstart.ModelPreprocessor.Environment) Plugin(org.apache.maven.model.Plugin)

Example 9 with Plugin

use of org.apache.maven.model.Plugin in project intellij-plugins by JetBrains.

the class GeneratorServer method resolveOutputs.

public void resolveOutputs(WorkspaceReaderImpl.ArtifactData data) throws Exception {
    final MavenProject project = maven.readProject(data.file, logger);
    if (project == null) {
        getLogger().warn("Cannot read project while resolve output file for " + data.toString());
        return;
    }
    final MavenProject oldProject = session.getCurrentProject();
    MojoExecution flexmojosMojoExecution = null;
    try {
        session.setCurrentProject(project);
        for (Plugin plugin : project.getBuildPlugins()) {
            final String pluginGroupId = plugin.getGroupId();
            if ((pluginGroupId.equals("org.sonatype.flexmojos") || pluginGroupId.equals("net.flexmojos.oss")) && plugin.getArtifactId().equals("flexmojos-maven-plugin")) {
                flexmojosMojoExecution = maven.createMojoExecution(plugin, getCompileGoalName(project), project);
                break;
            }
        }
        if (flexmojosMojoExecution == null) {
            return;
        }
        // getPluginRealm creates plugin realm and populates pluginDescriptor.classRealm field
        maven.getPluginRealm(flexmojosMojoExecution);
        Mojo mojo = mavenPluginManager.getConfiguredMojo(Mojo.class, session, flexmojosMojoExecution);
        try {
            data.outputFile = new File(Flexmojos.getOutput(mojo));
            String[] localesRuntime = (String[]) Flexmojos.invokePublicMethod(mojo, "getLocalesRuntime");
            data.linkReport = Flexmojos.getLinkReport(mojo);
            if (localesRuntime != null && localesRuntime.length > 0) {
                final Class<?> superclass = mojo.getClass().getSuperclass();
                Mojo localeMojo = (Mojo) Flexmojos.invokePublicMethod(mojo, "clone");
                final Method m = superclass.getDeclaredMethod("configureResourceBundle", String.class, superclass);
                m.setAccessible(true);
                String firstLocale = localesRuntime[0];
                m.invoke(mojo, firstLocale, localeMojo);
                //noinspection unchecked
                ((Map<String, String>) Flexmojos.invokePublicMethod(localeMojo, "getCache")).put("getProjectType", "rb.swc");
                data.localeOutputFilepathPattern = Flexmojos.getOutput(localeMojo).replace(firstLocale, "{_locale_}");
            // we don't release localeMojo (plexusContainer.release) - flexmojos doesn't do it too
            }
        } finally {
            plexusContainer.release(mojo);
        }
    } finally {
        session.setCurrentProject(oldProject);
        if (flexmojosMojoExecution != null) {
            maven.releaseMojoExecution(flexmojosMojoExecution);
        }
    }
}
Also used : MavenProject(org.apache.maven.project.MavenProject) Method(java.lang.reflect.Method) File(java.io.File) Plugin(org.apache.maven.model.Plugin)

Example 10 with Plugin

use of org.apache.maven.model.Plugin in project kie-wb-common by kiegroup.

the class DefaultPomEditor method updatePOMModel.

private Boolean updatePOMModel(Build build, Boolean defaultCompilerPluginPresent, Boolean alternativeCompilerPluginPresent, Boolean kiePluginPresent, int defaultMavenCompilerPosition, int alternativeCompilerPosition, int kieMavenPluginPosition) {
    Boolean overwritePOM = Boolean.FALSE;
    if (!alternativeCompilerPluginPresent) {
        // add alternative compiler and disable the default compiler
        build.addPlugin(getNewCompilerPlugin());
        alternativeCompilerPluginPresent = Boolean.TRUE;
        overwritePOM = Boolean.TRUE;
    }
    if (!defaultCompilerPluginPresent) {
        // if default maven compiler is not present we add the skip and phase none  to avoid its use
        Plugin disabledDefaultCompiler = new Plugin();
        disabledDefaultCompiler.setArtifactId(conf.get(ConfigurationKey.MAVEN_COMPILER_PLUGIN));
        disableMavenCompilerAlreadyPresent(disabledDefaultCompiler);
        build.addPlugin(disabledDefaultCompiler);
        defaultCompilerPluginPresent = Boolean.TRUE;
        overwritePOM = Boolean.TRUE;
    }
    if (defaultCompilerPluginPresent && alternativeCompilerPluginPresent) {
        if (defaultMavenCompilerPosition <= alternativeCompilerPosition) {
            // swap the positions
            Plugin defaultMavenCompiler = build.getPlugins().get(defaultMavenCompilerPosition);
            Plugin alternativeCompiler = build.getPlugins().get(alternativeCompilerPosition);
            build.getPlugins().set(defaultMavenCompilerPosition, alternativeCompiler);
            build.getPlugins().set(alternativeCompilerPosition, defaultMavenCompiler);
            overwritePOM = Boolean.TRUE;
        }
    }
    return overwritePOM;
}
Also used : Plugin(org.apache.maven.model.Plugin)

Aggregations

Plugin (org.apache.maven.model.Plugin)140 Xpp3Dom (org.codehaus.plexus.util.xml.Xpp3Dom)39 MavenProject (org.apache.maven.project.MavenProject)26 Build (org.apache.maven.model.Build)22 PluginExecution (org.apache.maven.model.PluginExecution)22 ArrayList (java.util.ArrayList)20 Dependency (org.apache.maven.model.Dependency)17 File (java.io.File)15 Model (org.apache.maven.model.Model)15 HashMap (java.util.HashMap)12 PluginDescriptor (org.apache.maven.plugin.descriptor.PluginDescriptor)12 CoreException (org.eclipse.core.runtime.CoreException)11 IOException (java.io.IOException)9 List (java.util.List)8 PluginManagement (org.apache.maven.model.PluginManagement)8 Map (java.util.Map)7 MavenSession (org.apache.maven.execution.MavenSession)7 ReportPlugin (org.apache.maven.model.ReportPlugin)7 NullProgressMonitor (org.eclipse.core.runtime.NullProgressMonitor)7 MojoExecutionException (org.apache.maven.plugin.MojoExecutionException)6