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

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

Introduction

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

Prototype

public String getPackaging() 

Source Link

Usage

From source file:org.jboss.maven.plugins.qstools.fixers.FinalNameFixer.java

License:Apache License

@Override
public void fixProject(MavenProject project, Document doc) throws Exception {

    String packaging = project.getPackaging();
    String expectedFinalName = getConfigurationProvider().getQuickstartsRules(project.getGroupId())
            .getFinalNamePatterns().get(packaging);

    Node finalNameNode = (Node) getxPath().evaluate("//finalName", doc, XPathConstants.NODE);
    String declaredFinalName = finalNameNode == null ? project.getBuild().getFinalName()
            : finalNameNode.getTextContent();

    if (expectedFinalName != null && !expectedFinalName.equals(declaredFinalName)) {

        Node buildNode = (Node) getxPath().evaluate("/project/build", doc, XPathConstants.NODE);
        if (buildNode == null) {
            buildNode = doc.createElement("build");
            Node projectNode = (Node) getxPath().evaluate("/project", doc, XPathConstants.NODE);
            projectNode.appendChild(doc.createTextNode("    "));
            projectNode.appendChild(buildNode);
        }/*from  w  w  w  .j  a  v  a  2s.c  o m*/

        finalNameNode = (Node) getxPath().evaluate("/project/build/finalName", doc, XPathConstants.NODE);
        if (finalNameNode == null) {
            finalNameNode = doc.createElement("finalName");
            buildNode.insertBefore(finalNameNode, buildNode.getFirstChild());
        }

        finalNameNode.setTextContent(expectedFinalName);
    }

    XMLUtil.writeXML(doc, project.getFile());
}

From source file:org.jboss.shrinkwrap.resolver.plugin.DependencyTreeMojo.java

License:Apache License

@Override
public void execute() throws MojoExecutionException {

    // first, we need to propagate environment settings
    PropagateExecutionContextMojo mojo = new PropagateExecutionContextMojo();
    mojo.setNamespace("maven.execution.");
    mojo.setSession(session);//from w ww. j a  v  a  2s.  c o m
    mojo.execute();

    // propagate into current environment
    SecurityActions.addProperties(session.getUserProperties());

    MavenProject project = session.getCurrentProject();

    // set scope
    ScopeType[] scopes = ScopeType.values();
    if (scope != null && !"".equals(scope)) {
        scopes = new ScopeType[] { ScopeType.fromScopeType(scope) };
    }

    // get ClassLoader that contains both Maven and plugin class path
    ClassLoader cls = getCombinedClassLoader(classRealmManager);

    // skip resolution if no dependencies are in the project (e.g. parent agreggator)
    MavenResolvedArtifact[] artifacts;

    if (project.getDependencies() == null || project.getDependencies().size() == 0) {
        artifacts = new MavenResolvedArtifact[0];
    } else {
        artifacts = Maven.configureResolverViaPlugin(cls).importDependencies(scopes).resolve()
                .withTransitivity().asResolvedArtifact();
    }

    StringBuilder projectGAV = new StringBuilder();
    projectGAV.append(project.getGroupId()).append(":").append(project.getArtifactId()).append(":")
            .append(project.getPackaging()).append(":").append(project.getVersion()).append("\n");

    String dependencyTree = buildDependencyTree(projectGAV, "+- ", artifacts);

    // write output to file if specified
    if (outputFile != null) {
        FileWriter writer = null;
        try {
            writer = new FileWriter(outputFile);
            writer.write(dependencyTree);
            getLog().info("Dependency tree output was writen into: " + outputFile.getAbsolutePath());
        } catch (IOException e) {

        } finally {
            try {
                if (writer != null) {
                    writer.close();
                }
            } catch (IOException e) {
            }
        }
    }
    // write an output to console
    else {
        StringBuilder outputBuffer = new StringBuilder();
        outputBuffer.append(OUTPUT_DELIMITER).append("\nShrinkWrap Maven: Dependency Tree\n")
                .append(OUTPUT_DELIMITER).append("\n").append(dependencyTree).append(OUTPUT_DELIMITER);

        getLog().info(outputBuffer.toString());
    }

}

From source file:org.jboss.tools.maven.cdi.configurators.CDIProjectConfigurator.java

License:Open Source License

private void configureInternal(MavenProject mavenProject, IProject project, IProgressMonitor monitor)
        throws CoreException {
    IPreferenceStore store = Activator.getDefault().getPreferenceStore();
    boolean configureCDI = store.getBoolean(Activator.CONFIGURE_CDI);
    if (!configureCDI) {
        return;/*from  www  . ja va 2  s .  c  om*/
    }
    final IFacetedProject fproj = ProjectFacetsManager.create(project);
    if (project.hasNature(CDICoreNature.NATURE_ID)
            && (fproj == null || (fproj.hasProjectFacet(cdiFacet) && fproj.hasProjectFacet(m2Facet)))) {
        //everything already installed. Since there's no support for version update -yet- we stop here
        return;
    }
    String packaging = mavenProject.getPackaging();
    String cdiVersion = getCDIVersion(mavenProject);
    if (cdiVersion != null) {
        if ((fproj != null) && ("war".equals(packaging) || "ejb".equals(packaging))) { //$NON-NLS-1$
            installDefaultFacets(fproj, cdiVersion, monitor);
        }
        CDIUtil.enableCDI(project, false, new NullProgressMonitor());
    }
}

From source file:org.jboss.tools.maven.jaxrs.configurators.JaxrsProjectConfigurator.java

License:Open Source License

private void configureInternal(MavenProject mavenProject, IProject project, IProgressMonitor monitor)
        throws CoreException {

    if (!"war".equals(mavenProject.getPackaging())) { //$NON-NLS-1$
        return;//from w w w  .  j a v  a 2s. c  om
    }

    IPreferenceStore store = Activator.getDefault().getPreferenceStore();
    boolean configureJaxRs = store.getBoolean(Activator.CONFIGURE_JAXRS);
    if (!configureJaxRs) {
        return;
    }

    final IFacetedProject fproj = ProjectFacetsManager.create(project);
    if (fproj == null) {
        return;
    }

    if (fproj.hasProjectFacet(JAX_RS_FACET) && fproj.hasProjectFacet(m2Facet)) {
        //everything already installed. Since there's no support for version update -yet- we bail
        return;
    }

    IProjectFacetVersion jaxRsVersion = getJaxRsVersion(mavenProject, project);
    if (jaxRsVersion != null) {
        installFacets(fproj, jaxRsVersion, mavenProject, monitor);
    }

}

From source file:org.jboss.tools.maven.jbosspackaging.configurators.SarProjectConfigurator.java

License:Open Source License

@Override
public void configure(ProjectConfigurationRequest request, IProgressMonitor monitor) throws CoreException {

    MavenProject mavenProject = request.getMavenProject();
    IProject project = request.getProject();

    markerManager.deleteMarkers(project, MavenSarConstants.SAR_CONFIGURATION_ERROR_MARKER_ID);

    if (!getExpectedPackage().equals(mavenProject.getPackaging())) {
        return;// w  w w  .  j  a v  a 2 s. c  o m
    }

    IFacetedProject facetedProject = ProjectFacetsManager.create(project, true, monitor);

    Set<Action> actions = new LinkedHashSet<Action>();

    IMavenProjectFacade facade = request.getMavenProjectFacade();

    ResourceCleaner fileCleaner = new ResourceCleaner(project);
    addFoldersToClean(fileCleaner, facade);

    IPath source = facade.getResourceLocations()[0];

    WTPProjectsUtil.installJavaFacet(actions, project, facetedProject);
    if (!actions.isEmpty()) {
        facetedProject.modify(actions, monitor);
    }
    installSarFacet(facetedProject, source, monitor);

    installM2Facet(facetedProject, monitor);

    ModuleCoreNature.addModuleCoreNatureIfNecessary(project, monitor);

    removeTestFolderLinks(project, mavenProject, monitor, "/");

    WTPProjectsUtil.setNonDependencyAttributeToContainer(project, monitor);

    WTPProjectsUtil.removeWTPClasspathContainer(project);

    fileCleaner.cleanUp();
}

From source file:org.jboss.tools.maven.jsf.configurators.JSFProjectConfigurator.java

License:Open Source License

private void configureInternal(MavenProject mavenProject, IProject project, IProgressMonitor monitor)
        throws CoreException {

    if (!"war".equals(mavenProject.getPackaging())) {//$NON-NLS-1$
        return;//from w  w w .java2  s.c om
    }

    IPreferenceStore store = Activator.getDefault().getPreferenceStore();
    boolean configureJSF = store.getBoolean(Activator.CONFIGURE_JSF);
    if (!configureJSF) {
        return;
    }

    final IFacetedProject fproj = ProjectFacetsManager.create(project);
    if (fproj != null && fproj.hasProjectFacet(JSF_FACET) && fproj.hasProjectFacet(m2Facet)) {
        //everything already installed. Since there's no support for version update -yet- we bail
        return;
    }

    String jsfVersion = getJSFVersion(mavenProject, fproj);
    if (fproj != null && jsfVersion != null) {
        installWarFacets(fproj, jsfVersion, mavenProject, monitor);
    }
}

From source file:org.jboss.tools.maven.portlet.configurators.PortletProjectConfigurator.java

License:Open Source License

private void configureInternal(MavenProject mavenProject, IProject project, IProgressMonitor monitor)
        throws CoreException {
    IPreferenceStore store = Activator.getDefault().getPreferenceStore();
    boolean configurePortlet = store.getBoolean(Activator.CONFIGURE_PORTLET);
    if (!configurePortlet) {
        return;/*  w  w  w  .  ja v  a  2  s . c  o  m*/
    }

    String packaging = mavenProject.getPackaging();
    String portletVersion = Activator.getDefault().getDependencyVersion(mavenProject, PORTLET_API_GROUP_ID,
            PORTLET_API_ARTIFACT_ID);
    String jsfportletVersion = Activator.getDefault().getDependencyVersion(mavenProject,
            PORTLETBRIDGE_API_GROUP_ID, PORTLETBRIDGE_API_ARTIFACT_ID);
    if (portletVersion != null) {
        final IFacetedProject fproj = ProjectFacetsManager.create(project);
        if (fproj != null && "war".equals(packaging)) { //$NON-NLS-1$
            installWarFacets(fproj, portletVersion, jsfportletVersion, monitor);
        }
    }
}

From source file:org.jboss.tools.maven.seam.configurators.SeamProjectConfigurator.java

License:Open Source License

private void configureInternal(MavenProject mavenProject, IProject project, IProgressMonitor monitor)
        throws CoreException {
    IPreferenceStore store = Activator.getDefault().getPreferenceStore();
    boolean configureSeam = store.getBoolean(Activator.CONFIGURE_SEAM);
    if (!configureSeam) {
        return;/* www  .ja  v  a2s. co  m*/
    }
    if (isSeamSettingChangedByUser(project)) {
        return;
    }
    IProject rootSeamProject = SeamWizardUtils.getRootSeamProject(project);
    if (rootSeamProject != null && isSeamSettingChangedByUser(rootSeamProject)) {
        return;
    }
    clearMarkers(project);
    String packaging = mavenProject.getPackaging();
    String seamVersion = getSeamVersion(mavenProject);
    if (seamVersion != null) {
        IProject[] earProjects = EarUtilities.getReferencingEARProjects(project);
        String deploying = packaging;
        if (earProjects.length > 0) {
            deploying = "ear"; //$NON-NLS-1$
        }
        final IFacetedProject fproj = ProjectFacetsManager.create(project);
        if (fproj == null) {
            return;
        }
        IProjectFacetVersion seamFacetVersion = getSeamFacetVersion(seamVersion);
        if ("war".equals(packaging)) { //$NON-NLS-1$
            IDataModel model = createSeamDataModel(deploying, seamVersion, project);
            //JBIDE-10785 : refresh parent to prevent 
            // org.osgi.service.prefs.BackingStoreException: Resource '/parent/web/.settings' does not exist.
            if (!fproj.hasProjectFacet(jsfFacet)) {
                MavenUtil.refreshParent(mavenProject);
            }

            installWarFacets(fproj, model, seamFacetVersion, monitor);
        } else if ("ear".equals(packaging)) { //$NON-NLS-1$
            installEarFacets(fproj, seamFacetVersion, monitor);
            installM2Facet(fproj, monitor);
            IProject webProject = getReferencingSeamWebProject(project);
            if (webProject != null) {
                IEclipsePreferences prefs = SeamCorePlugin.getSeamPreferences(webProject);
                String deployingType = prefs.get(ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS, null);
                if (deployingType == null
                        || deployingType.equals(ISeamFacetDataModelProperties.DEPLOY_AS_WAR)) {
                    prefs.put(ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS,
                            ISeamFacetDataModelProperties.DEPLOY_AS_EAR);
                    storeSettings(webProject);
                }
                IProject ejbProject = getReferencingSeamEJBProject(project);
                if (ejbProject != null) {
                    prefs.put(ISeamFacetDataModelProperties.SEAM_EJB_PROJECT, ejbProject.getName());
                    IJavaProject javaProject = JavaCore.create(ejbProject);
                    boolean configureSeamArtifacts = store.getBoolean(Activator.CONFIGURE_SEAM_ARTIFACTS);
                    if (configureSeamArtifacts) {
                        if (javaProject != null && javaProject.isOpen()) {
                            try {
                                IClasspathEntry[] entries = javaProject.getRawClasspath();
                                for (int i = 0; i < entries.length; i++) {
                                    IClasspathEntry entry = entries[i];
                                    if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE) {
                                        String sourceFolder = entry.getPath().toString();
                                        prefs.put(ISeamFacetDataModelProperties.SESSION_BEAN_SOURCE_FOLDER,
                                                sourceFolder);
                                        prefs.put(ISeamFacetDataModelProperties.ENTITY_BEAN_SOURCE_FOLDER,
                                                sourceFolder);
                                        break;
                                    }
                                }
                            } catch (JavaModelException e) {
                                MavenSeamActivator.log(e);
                            }
                        }
                        IPackageFragment[] packageFragments = javaProject.getPackageFragments();
                        for (int i = 0; i < packageFragments.length; i++) {
                            IPackageFragment pf = packageFragments[i];
                            if (pf != null && pf.getKind() == IPackageFragmentRoot.K_SOURCE
                                    && !pf.isDefaultPackage()) {
                                if (pf.hasSubpackages() && !pf.hasChildren()) {
                                    continue;
                                }
                                String packageName = pf.getElementName();
                                prefs.put(ISeamFacetDataModelProperties.SESSION_BEAN_PACKAGE_NAME, packageName);
                                prefs.put(ISeamFacetDataModelProperties.ENTITY_BEAN_PACKAGE_NAME, packageName);
                            }
                        }
                    }
                }
                storeSettings(webProject);
            }

        } else if ("ejb".equals(packaging)) { //$NON-NLS-1$
            installM2Facet(fproj, monitor);
            installEjbFacets(fproj, seamFacetVersion, monitor);
            addSeamSupport(project, earProjects);
            storeSettings(project);

        }
        //          addSeamSupport(project);
        //          
        //          storeSettings(project);
    }
}

From source file:org.jboss.tools.maven.springboot.configurators.SpringBootProjectConfigurator.java

License:Open Source License

private void addUtilityFacet(MavenProject mavenProject, IProject project, IProgressMonitor monitor)
        throws CoreException {
    if (mavenProject == null || !MavenUtils.isJarPackaginging(mavenProject.getPackaging())) {
        return;/*from  w w w  . ja v  a 2  s . c o m*/
    }
    ModuleCoreNature.addModuleCoreNatureIfNecessary(project, monitor);
    ModuleUtils.addUtilityFacet(project, monitor);
}

From source file:org.jenkinsci.plugins.pipeline.maven.eventspy.handler.AbstractMavenEventHandler.java

License:Open Source License

public Xpp3Dom newElement(@Nonnull String name, @Nullable final MavenProject project) {
    Xpp3Dom projectElt = new Xpp3Dom(name);
    if (project == null) {
        return projectElt;
    }//  ww  w  . ja va 2s. co  m

    projectElt.setAttribute("name", project.getName());
    projectElt.setAttribute("groupId", project.getGroupId());
    projectElt.setAttribute("artifactId", project.getArtifactId());
    projectElt.setAttribute("version", project.getVersion());
    projectElt.setAttribute("packaging", project.getPackaging());

    if (project.getBasedir() != null) {
        try {
            projectElt.setAttribute("baseDir", project.getBasedir().getCanonicalPath());
        } catch (IOException e) {
            throw new RuntimeIOException(e);
        }
    }

    if (project.getFile() != null) {
        File projectFile = project.getFile();
        String absolutePath;
        try {
            absolutePath = projectFile.getCanonicalPath();
        } catch (IOException e) {
            throw new RuntimeIOException(e);
        }

        if (absolutePath.endsWith(File.separator + "pom.xml")
                || absolutePath.endsWith(File.separator + ".flattened-pom.xml")) {
            // JENKINS-43616: flatten-maven-plugin replaces the original pom as artifact with a .flattened-pom.xml
            // no tweak
        } else if (absolutePath.endsWith(File.separator + "dependency-reduced-pom.xml")) {
            // JENKINS-42302: maven-shade-plugin creates a temporary project file dependency-reduced-pom.xml
            // TODO see if there is a better way to implement this "workaround"
            absolutePath = absolutePath.replace(File.separator + "dependency-reduced-pom.xml",
                    File.separator + "pom.xml");
        } else if (absolutePath.endsWith(File.separator + ".git-versioned-pom.xml")) {
            // JENKINS-56666 maven-git-versioning-extension causes warnings due to temporary pom.xml file name '.git-versioned-pom.xml'
            // https://github.com/qoomon/maven-git-versioning-extension/blob/v4.1.0/src/main/java/me/qoomon/maven/gitversioning/VersioningMojo.java#L39
            // TODO see if there is a better way to implement this "workaround"
            absolutePath = absolutePath.replace(File.separator + ".git-versioned-pom.xml",
                    File.separator + "pom.xml");
        } else {
            String flattenedPomFilename = getMavenFlattenPluginFlattenedPomFilename(project);
            if (flattenedPomFilename == null) {
                logger.warn("[jenkins-event-spy] Unexpected Maven project file name '" + projectFile.getName()
                        + "', problems may occur");
            } else {
                if (absolutePath.endsWith(File.separator + flattenedPomFilename)) {
                    absolutePath = absolutePath.replace(File.separator + flattenedPomFilename,
                            File.separator + "pom.xml");
                } else {
                    logger.warn("[jenkins-event-spy] Unexpected Maven project file name '"
                            + projectFile.getName() + "', problems may occur");
                }
            }
        }
        projectElt.setAttribute("file", absolutePath);
    }

    Build build = project.getBuild();

    if (build != null) {
        Xpp3Dom buildElt = new Xpp3Dom("build");
        projectElt.addChild(buildElt);
        if (build.getOutputDirectory() != null) {
            buildElt.setAttribute("directory", build.getDirectory());
        }
        if (build.getSourceDirectory() != null) {
            buildElt.setAttribute("sourceDirectory", build.getSourceDirectory());
        }
    }

    return projectElt;
}