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

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

Introduction

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

Prototype

public String getGroupId() 

Source Link

Usage

From source file:org.ops4j.pax.construct.clone.CloneMojo.java

License:Apache License

/**
 * Create a new archetype for a bundle project, with potentially customized POM and Bnd settings
 * //from   w w w . ja  va2  s .  c o m
 * @param project Maven project
 * @param namespace Java namespace, may be null
 * @param customizedPom customized Maven project model, may be null
 * @return clause identifying the archetype fragment
 * @throws MojoExecutionException
 */
private String createBundleArchetype(MavenProject project, String namespace, Pom customizedPom)
        throws MojoExecutionException {
    File baseDir = project.getBasedir();

    getLog().info("Cloning bundle project " + project.getArtifactId());
    ArchetypeFragment fragment = new ArchetypeFragment(getFragmentDir(), namespace, false);
    fragment.addPom(baseDir, customizedPom);

    if (null != namespace) {
        fragment.addSources(baseDir, project.getBuild().getSourceDirectory(), false);
        fragment.addSources(baseDir, project.getBuild().getTestSourceDirectory(), true);
    }

    for (Iterator i = project.getTestResources().iterator(); i.hasNext();) {
        Resource r = (Resource) i.next();
        fragment.addResources(baseDir, r.getDirectory(), r.getIncludes(), r.getExcludes(), true);
    }

    List excludes = new ArrayList();
    excludes.addAll(fragment.getIncludedFiles());
    excludes.add("target/");
    excludes.add("runner/");
    excludes.add("pom.xml");

    // consider everything else in the bundle directory to be a resource
    fragment.addResources(baseDir, baseDir.getPath(), null, excludes, false);

    // archetype must use different id
    String groupId = project.getGroupId();
    String artifactId = project.getArtifactId() + "-archetype";
    String version = project.getVersion();

    // archive customized bundle sources, POM and Bnd instructions
    String fragmentId = groupId + ':' + artifactId + ':' + version;
    fragment.createArchive(fragmentId.replace(':', '_'), newJarArchiver());

    return fragmentId;
}

From source file:org.ops4j.pax.construct.clone.CloneMojo.java

License:Apache License

/**
 * Archive all the selected resources under a single Maven archetype
 * /*ww w  .  j a  v a 2  s .c o  m*/
 * @param project containing Maven project
 * @return clause identifying the archetype fragment
 * @throws MojoExecutionException
 */
private String createProjectArchetype(MavenProject project) throws MojoExecutionException {
    File baseDir = project.getBasedir();

    getLog().info("Cloning primary project " + project.getArtifactId());
    ArchetypeFragment fragment = new ArchetypeFragment(getFragmentDir(), null, unify);
    fragment.addPom(baseDir, null);

    List excludes = new ArrayList();
    excludes.addAll(getExcludedPaths(project));
    excludes.add("**/target/");
    excludes.add("runner/");
    excludes.add("pom.xml");

    // consider everything else that's not been handled to be a resource
    fragment.addResources(baseDir, baseDir.getPath(), null, excludes, false);

    // archetype must use different id
    String groupId = project.getGroupId();
    String artifactId = project.getArtifactId() + "-archetype";
    String version = project.getVersion();

    // archive all the customized non-bundle POMs and projects
    String fragmentId = groupId + ':' + artifactId + ':' + version;
    fragment.createArchive(fragmentId.replace(':', '_'), newJarArchiver());

    return fragmentId;
}

From source file:org.ops4j.pax.construct.clone.CloneMojo.java

License:Apache License

/**
 * @param project Maven bundle project//from ww  w  .ja v a 2 s .c o m
 * @param bundleName expected symbolic name of the bundle (null if imported)
 */
private void registerBundleName(MavenProject project, String bundleName) {
    m_bundleNameMap.put(project.getGroupId() + ':' + project.getArtifactId(), bundleName);
}

From source file:org.ops4j.pax.construct.lifecycle.EclipseOSGiMojo.java

License:Apache License

private boolean isReactorDependency(IdeDependency dependency) {
    // check current reactor...
    if (reactorProjects != null) {
        for (Iterator i = reactorProjects.iterator(); i.hasNext();) {
            MavenProject reactorProject = (MavenProject) i.next();

            if (reactorProject.getGroupId().equals(dependency.getGroupId())
                    && reactorProject.getArtifactId().equals(dependency.getArtifactId())) {
                return true;
            }//w  w  w  .ja  v a2  s. c  o  m
        }
    }
    return false;
}

From source file:org.ops4j.pax.construct.lifecycle.EclipseOSGiMojo.java

License:Apache License

/**
 * Provide better naming for Pax-Construct generated OSGi bundles
 * //from ww w.j a v a 2 s. c om
 * @param project current Maven project
 * @param addVersion when true, add the project version to the name
 * @return an Eclipse friendly name for the bundle
 */
private static String getEclipseProjectName(MavenProject project, boolean addVersion) {
    String projectName = project.getProperties().getProperty("bundle.symbolicName");
    if (null == projectName) {
        // fall back to standard "groupId.artifactId" but try to eliminate duplicate segments
        projectName = PomUtils.getCompoundId(project.getGroupId(), project.getArtifactId());
    }

    if (addVersion) {
        // check for wrapper version, which reflects the version of the wrapped contents
        String projectVersion = project.getProperties().getProperty("wrapped.version");
        if (null == projectVersion) {
            projectVersion = project.getVersion();
        }

        return projectName + " [" + projectVersion + ']';
    }

    return projectName;
}

From source file:org.ops4j.pax.construct.lifecycle.ProvisionMojo.java

License:Apache License

/**
 * Create new POM (based on the root POM) which lists the deployed bundles as dependencies
 * //from ww  w  . j  a  v a 2s.  c  o  m
 * @param bundles list of bundles to be deployed
 * @return deployment project
 * @throws MojoExecutionException
 */
private MavenProject createDeploymentProject(List bundles) throws MojoExecutionException {
    MavenProject deployProject;

    if (null == m_project.getFile()) {
        deployProject = new MavenProject();
        deployProject.setGroupId("examples");
        deployProject.setArtifactId("pax-provision");
        deployProject.setVersion("1.0-SNAPSHOT");
    } else {
        deployProject = new MavenProject(m_project);
    }

    String internalId = PomUtils.getCompoundId(deployProject.getGroupId(), deployProject.getArtifactId());
    deployProject.setGroupId(internalId + ".build");
    deployProject.setArtifactId("deployment");

    // remove unnecessary cruft
    deployProject.setPackaging("pom");
    deployProject.getModel().setModules(null);
    deployProject.getModel().setDependencies(bundles);
    deployProject.getModel().setPluginRepositories(null);
    deployProject.getModel().setReporting(null);
    deployProject.setBuild(null);

    File deployFile = new File(deployProject.getBasedir(), "runner/deploy-pom.xml");

    deployFile.getParentFile().mkdirs();
    deployProject.setFile(deployFile);

    try {
        Writer writer = StreamFactory.newXmlWriter(deployFile);
        deployProject.writeModel(writer);
        IOUtil.close(writer);
    } catch (IOException e) {
        throw new MojoExecutionException("Unable to write deployment POM " + deployFile);
    }

    return deployProject;
}

From source file:org.ops4j.pax.construct.lifecycle.ProvisionMojo.java

License:Apache License

/**
 * Install deployment POM in the local Maven repository
 * /*from w ww. j  av  a2  s  .c  om*/
 * @param project deployment project
 * @throws MojoExecutionException
 */
private void installDeploymentPom(MavenProject project) throws MojoExecutionException {
    String groupId = project.getGroupId();
    String artifactId = project.getArtifactId();
    String version = project.getVersion();

    Artifact pomArtifact = m_factory.createProjectArtifact(groupId, artifactId, version);

    try {
        m_installer.install(project.getFile(), pomArtifact, m_localRepo);
    } catch (ArtifactInstallationException e) {
        throw new MojoExecutionException("Unable to install deployment POM " + pomArtifact);
    }
}

From source file:org.ops4j.pax.construct.lifecycle.ProvisionMojo.java

License:Apache License

/**
 * Deploy bundles using the 'classic' Pax-Runner
 * /* ww w .  j  a  va  2  s .  co  m*/
 * @param mainClass main Pax-Runner class
 * @param project deployment project
 * @param repositories comma separated list of Maven repositories
 * @throws MojoExecutionException
 */
private void deployRunnerClassic(Class mainClass, MavenProject project, String repositories)
        throws MojoExecutionException {
    String workDir = project.getBasedir() + "/runner";

    String cachedPomName = project.getArtifactId() + '_' + project.getVersion() + ".pom";
    File cachedPomFile = new File(workDir + "/lib/" + cachedPomName);

    // Force reload of pom
    cachedPomFile.delete();

    if (PomUtils.isEmpty(framework)) {
        framework = "felix";
    }

    String[] deployAppCmds = { "--dir=" + workDir, "--no-md5", "--platform=" + framework, "--profile=default",
            "--repository=" + repositories, "--localRepository=" + m_localRepo.getBasedir(),
            project.getGroupId(), project.getArtifactId(), project.getVersion() };

    invokePaxRunner(mainClass, deployAppCmds);
}

From source file:org.ops4j.pax.construct.project.ImportBundleMojo.java

License:Apache License

/**
 * Add bundle as a dependency to the provisioning POM and the local bundle POM, as appropriate
 * /*  w  w w  . j a v a2  s  .c  o m*/
 * @param project bundle project
 */
private void importBundle(MavenProject project) {
    Dependency dependency = new Dependency();

    dependency.setGroupId(project.getGroupId());
    dependency.setArtifactId(project.getArtifactId());
    dependency.setVersion(project.getVersion());
    dependency.setOptional(!deploy);

    // only add non-local bundles to the provisioning POM
    if (m_provisionPom != null && project.getFile() == null) {
        getLog().info("Importing " + project.getName() + " to " + m_provisionPom);
        m_provisionPom.addDependency(dependency, overwrite);
    }

    if (m_localBundlePom != null) {
        // use provided scope when adding to bundle pom
        dependency.setScope(Artifact.SCOPE_PROVIDED);

        getLog().info("Adding " + project.getName() + " as dependency to " + m_localBundlePom);
        m_localBundlePom.addDependency(dependency, overwrite);
    }
}

From source file:org.ops4j.pax.construct.util.XppPom.java

License:Apache License

/**
 * {@inheritDoc}//from  w w w  .j a  va2 s.c om
 */
public void setParent(MavenProject project, String relativePath, boolean overwrite)
        throws ExistingElementException {
    if (m_pom.getChild("parent") != null && !overwrite) {
        throw new ExistingElementException("parent");
    }

    Xpp3DomMap parent = new Xpp3DomMap("parent");
    parent.putValue("relativePath", relativePath);
    parent.putValue("groupId", project.getGroupId());
    parent.putValue("artifactId", project.getArtifactId());
    parent.putValue("version", project.getVersion());

    Xpp3Dom newPom = new Xpp3Dom("project");
    newPom.addChild(parent);

    m_pom = Xpp3DomHelper.mergeXpp3Dom(newPom, m_pom);
}