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

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

Introduction

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

Prototype

public MavenProject(MavenProject project) 

Source Link

Usage

From source file:org.jboss.datavirt.commons.maven.plugin.GenerateFeaturesXmlMojo.java

License:Apache License

/**
 * Resolves the given artifact to a maven project.
 * @param artifact//from   w w w. j  av a  2s  .c o m
 * @throws Exception
 */
private MavenProject resolveProject(Artifact artifact) throws Exception {
    Artifact pomArtifact = repositorySystem.createArtifact(artifact.getGroupId(), artifact.getArtifactId(),
            artifact.getVersion(), "", "pom");
    ArtifactResolutionRequest request = new ArtifactResolutionRequest();
    request.setArtifact(pomArtifact);
    ArtifactResolutionResult resolved = repositorySystem.resolve(request);
    pomArtifact = resolved.getArtifacts().iterator().next();
    InputStream contentStream = null;
    MavenProject project = null;
    try {
        contentStream = new FileInputStream(pomArtifact.getFile());
        Model model = new MavenXpp3Reader().read(contentStream);
        project = new MavenProject(model);
    } finally {
        contentStream.close();
    }
    return project;
}

From source file:org.mrgeo.plugins.ListDependencies.java

License:Apache License

private MavenProject loadProject(File pomFile) throws Exception {
    MavenProject ret = null;//from w ww  .  j  av a2  s.c  om
    MavenXpp3Reader mavenReader = new MavenXpp3Reader();

    if (pomFile != null && pomFile.exists()) {
        FileReader reader = null;

        try {
            reader = new FileReader(pomFile);
            Model model = mavenReader.read(reader);
            model.setPomFile(pomFile);

            ret = new MavenProject(model);
        } finally {
            // Close reader
        }
    }

    return ret;
}

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

License:Apache License

/**
 * {@inheritDoc}//from   ww w.  j a  v  a 2s .  com
 */
public void setParent(Pom pom, String relativePath, boolean overwrite) throws ExistingElementException {
    MavenProject project = new MavenProject(new Model());

    project.setGroupId(pom.getGroupId());
    project.setArtifactId(pom.getArtifactId());
    project.setVersion(pom.getVersion());

    setParent(project, relativePath, overwrite);
}

From source file:org.overlord.commons.maven.plugin.GenerateFeaturesXmlMojo.java

License:Apache License

/**
 * Resolves the given artifact to a maven project.
 * @param artifact//from   w w w  .  j  a  va  2  s . c  om
 * @throws Exception
 */
private MavenProject resolveProject(Artifact artifact) throws Exception {
    Artifact pomArtifact = repositorySystem.createArtifact(artifact.getGroupId(), artifact.getArtifactId(),
            artifact.getVersion(), "", "pom"); //$NON-NLS-1$ //$NON-NLS-2$
    ArtifactResolutionRequest request = new ArtifactResolutionRequest();
    request.setArtifact(pomArtifact);
    ArtifactResolutionResult resolved = repositorySystem.resolve(request);
    pomArtifact = resolved.getArtifacts().iterator().next();
    InputStream contentStream = null;
    MavenProject project = null;
    try {
        contentStream = new FileInputStream(pomArtifact.getFile());
        Model model = new MavenXpp3Reader().read(contentStream);
        project = new MavenProject(model);
    } finally {
        contentStream.close();
    }
    return project;
}

From source file:org.overlord.sramp.integration.java.artifactbuilder.MavenPomArtifactBuilder.java

License:Apache License

@Override
public ArtifactBuilder buildArtifacts(BaseArtifactType primaryArtifact, ArtifactContent artifactContent)
        throws IOException {
    super.buildArtifacts(primaryArtifact, artifactContent);

    try {/* www . j  a  v  a 2s. c  om*/
        Model model = new MavenXpp3Reader().read(getContentStream());
        MavenProject project = new MavenProject(model);
        ((ExtendedDocument) primaryArtifact).setExtendedType(JavaModel.TYPE_MAVEN_POM_XML);
        for (String key : project.getProperties().stringPropertyNames()) {
            String value = project.getProperties().getProperty(key);
            SrampModelUtils.setCustomProperty(primaryArtifact, JavaModel.PROP_MAVEN_PROPERTY + key, value);
        }
        //set core properties when not specified on the request
        if (primaryArtifact.getDescription() == null)
            primaryArtifact.setDescription(project.getDescription());
        if (primaryArtifact.getName() == null)
            primaryArtifact.setName(project.getName());
        if (primaryArtifact.getVersion() == null)
            primaryArtifact.setVersion(project.getVersion());
        //set the GAV and packaging info
        SrampModelUtils.setCustomProperty(primaryArtifact, JavaModel.PROP_MAVEN_ARTIFACT_ID,
                model.getArtifactId());
        SrampModelUtils.setCustomProperty(primaryArtifact, JavaModel.PROP_MAVEN_GROUP_ID, model.getGroupId());
        SrampModelUtils.setCustomProperty(primaryArtifact, JavaModel.PROP_MAVEN_VERSION, model.getVersion());
        SrampModelUtils.setCustomProperty(primaryArtifact, JavaModel.PROP_MAVEN_PACKAGING,
                model.getPackaging());
        //set the parent GAV info
        if (model.getParent() != null) {
            SrampModelUtils.setCustomProperty(primaryArtifact, JavaModel.PROP_MAVEN_PARENT_ARTIFACT_ID,
                    model.getParent().getArtifactId());
            SrampModelUtils.setCustomProperty(primaryArtifact, JavaModel.PROP_MAVEN_PARENT_GROUP_ID,
                    model.getParent().getGroupId());
            SrampModelUtils.setCustomProperty(primaryArtifact, JavaModel.PROP_MAVEN_PARENT_VERSION,
                    model.getParent().getVersion());
        }

        return this;
    } catch (XmlPullParserException e) {
        throw new IOException(e.getMessage(), e);
    }
}

From source file:org.overlord.sramp.integration.java.deriver.MavenPomDeriver.java

License:Apache License

/**
 * @see org.overlord.sramp.common.derived.ArtifactDeriver#derive(org.oasis_open.docs.s_ramp.ns.s_ramp_v1.BaseArtifactType, java.io.InputStream)
 *//*from  w ww  .ja va  2 s . c  o m*/
@Override
public Collection<BaseArtifactType> derive(BaseArtifactType artifact, InputStream contentStream)
        throws IOException {
    List<BaseArtifactType> derivedArtifacts = new ArrayList<BaseArtifactType>();
    try {
        Model model = new MavenXpp3Reader().read(contentStream);
        MavenProject project = new MavenProject(model);
        ((ExtendedDocument) artifact).setExtendedType(JavaModel.TYPE_MAVEN_POM_XML);
        for (String key : project.getProperties().stringPropertyNames()) {
            String value = project.getProperties().getProperty(key);
            SrampModelUtils.setCustomProperty(artifact, JavaModel.PROP_MAVEN_PROPERTY + key, value);
        }
        //set core properties when not specified on the request
        if (artifact.getDescription() == null)
            artifact.setDescription(project.getDescription());
        if (artifact.getName() == null)
            artifact.setName(project.getName());
        if (artifact.getVersion() == null)
            artifact.setVersion(project.getVersion());
        //set the GAV and packaging info
        SrampModelUtils.setCustomProperty(artifact, JavaModel.PROP_MAVEN_ARTIFACT_ID, model.getArtifactId());
        SrampModelUtils.setCustomProperty(artifact, JavaModel.PROP_MAVEN_GROUP_ID, model.getGroupId());
        SrampModelUtils.setCustomProperty(artifact, JavaModel.PROP_MAVEN_VERSION, model.getVersion());
        SrampModelUtils.setCustomProperty(artifact, JavaModel.PROP_MAVEN_PACKAGING, model.getPackaging());
        //set the parent GAV info
        if (model.getParent() != null) {
            SrampModelUtils.setCustomProperty(artifact, JavaModel.PROP_MAVEN_PARENT_ARTIFACT_ID,
                    model.getParent().getArtifactId());
            SrampModelUtils.setCustomProperty(artifact, JavaModel.PROP_MAVEN_PARENT_GROUP_ID,
                    model.getParent().getGroupId());
            SrampModelUtils.setCustomProperty(artifact, JavaModel.PROP_MAVEN_PARENT_VERSION,
                    model.getParent().getVersion());
        }
    } catch (XmlPullParserException e) {
        throw new IOException(e.getMessage(), e);
    }
    return derivedArtifacts;
}

From source file:org.sonar.api.test.MavenTestUtils.java

License:Open Source License

public static MavenProject loadPom(String pomUrlInClasspath) {
    FileReader fileReader = null;
    try {// w  w w .jav a  2s .co m
        File pomFile = new File(MavenTestUtils.class.getResource(pomUrlInClasspath).toURI());
        MavenXpp3Reader pomReader = new MavenXpp3Reader();
        fileReader = new FileReader(pomFile);
        Model model = pomReader.read(fileReader);
        MavenProject project = new MavenProject(model);
        project.setFile(pomFile);
        project.getBuild().setDirectory(pomFile.getParentFile().getPath());
        project.addCompileSourceRoot(pomFile.getParentFile().getPath() + "/src/main/java");
        project.addTestCompileSourceRoot(pomFile.getParentFile().getPath() + "/src/test/java");
        return project;
    } catch (Exception e) {
        throw new SonarException("Failed to read Maven project file : " + pomUrlInClasspath, e);

    } finally {
        IOUtils.closeQuietly(fileReader);
    }
}

From source file:org.sourcepit.tpmp.resolver.tycho.TychoSessionTargetPlatformResolver.java

License:Apache License

private MavenProject setupAggregatedProject(MavenSession session,
        TargetPlatformConfiguration aggregatedConfiguration) {
    PropertiesMap mvnProperties = new LinkedPropertiesMap();
    mvnProperties.load(getClass().getClassLoader(), "META-INF/tpmp/maven.properties");

    String groupId = mvnProperties.get("groupId");
    String artifactId = mvnProperties.get("artifactId");
    String version = mvnProperties.get("version");

    final String tpmpKey = Plugin.constructKey(groupId, artifactId);

    MavenProject origin = session.getCurrentProject();

    Model model = origin.getModel().clone();
    Build build = model.getBuild();/*from ww  w. ja va2s  .c o  m*/
    if (build.getPluginsAsMap().get(tpmpKey) == null) {
        Plugin tpmp = new Plugin();
        tpmp.setGroupId(groupId);
        tpmp.setArtifactId(artifactId);
        tpmp.setVersion(version);

        build.getPlugins().add(tpmp);
        build.flushPluginMap();
    }

    MavenProject fake = new MavenProject(model);
    fake.setClassRealm(origin.getClassRealm());
    fake.setFile(origin.getFile());

    final Map<String, ArtifactRepository> artifactRepositories = new LinkedHashMap<String, ArtifactRepository>();
    final Map<String, ArtifactRepository> pluginRepositories = new LinkedHashMap<String, ArtifactRepository>();
    for (MavenProject project : session.getProjects()) {
        for (ArtifactRepository repository : project.getRemoteArtifactRepositories()) {
            if (!artifactRepositories.containsKey(repository.getId())) {
                artifactRepositories.put(repository.getId(), repository);
            }
        }
        for (ArtifactRepository repository : project.getPluginArtifactRepositories()) {
            if (!pluginRepositories.containsKey(repository.getId())) {
                pluginRepositories.put(repository.getId(), repository);
            }
        }
    }

    fake.setRemoteArtifactRepositories(new ArrayList<ArtifactRepository>(artifactRepositories.values()));
    fake.setPluginArtifactRepositories(new ArrayList<ArtifactRepository>(pluginRepositories.values()));
    fake.setManagedVersionMap(origin.getManagedVersionMap());

    if (getTychoProject(fake) == null) {
        fake.setPackaging("eclipse-repository");
    }

    fake.getBuildPlugins();

    AbstractTychoProject tychoProject = (AbstractTychoProject) getTychoProject(fake);
    tychoProject.setupProject(session, fake);

    Properties properties = new Properties();
    properties.putAll(fake.getProperties());
    properties.putAll(session.getSystemProperties()); // session wins
    properties.putAll(session.getUserProperties());
    fake.setContextValue(TychoConstants.CTX_MERGED_PROPERTIES, properties);

    fake.setContextValue(TychoConstants.CTX_TARGET_PLATFORM_CONFIGURATION, aggregatedConfiguration);

    ExecutionEnvironmentConfiguration eeConfiguration = new ExecutionEnvironmentConfigurationImpl(logger,
            aggregatedConfiguration.isResolveWithEEConstraints());
    tychoProject.readExecutionEnvironmentConfiguration(fake, eeConfiguration);
    fake.setContextValue(TychoConstants.CTX_EXECUTION_ENVIRONMENT_CONFIGURATION, eeConfiguration);

    final DependencyMetadata dm = new DependencyMetadata();
    for (ReactorProject reactorProject : DefaultReactorProject.adapt(session)) {
        mergeMetadata(dm, reactorProject, true);
        mergeMetadata(dm, reactorProject, false);
    }

    int i = 0;
    for (Object object : dm.getMetadata(true)) {
        InstallableUnitDAO dao = new TychoSourceIUResolver.InstallableUnitDAO(
                object.getClass().getClassLoader());
        dao.setProperty(object, RepositoryLayoutHelper.PROP_CLASSIFIER, "fake_" + i);
        i++;
    }

    for (Object object : dm.getMetadata(false)) {
        InstallableUnitDAO dao = new TychoSourceIUResolver.InstallableUnitDAO(
                object.getClass().getClassLoader());
        dao.setProperty(object, RepositoryLayoutHelper.PROP_CLASSIFIER, "fake_" + i);
        i++;
    }

    Map<String, DependencyMetadata> metadata = new LinkedHashMap<String, DependencyMetadata>();
    metadata.put(null, dm);

    fake.setContextValue("tpmp.aggregatedMetadata", metadata);

    return fake;
}

From source file:org.talend.components.api.service.internal.ComponentServiceImpl.java

License:Open Source License

/**
 * DOC sgandon Comment method "computeDependenciesFromPom".
 * //ww  w .ja v a  2s.  c om
 * @param mavenPomStream
 * @param componentDef will only be used to for its name in case of errors.
 * @return
 * @throws org.eclipse.aether.resolution.DependencyResolutionException
 * @throws DependencyCollectionException
 * @throws XmlPullParserException
 * @throws IOException
 * @throws ModelBuildingException
 * @throws Exception
 */
Set<String> computeDependenciesFromPom(InputStream mavenPomStream, String... excludedScopes)
        throws DependencyCollectionException, org.eclipse.aether.resolution.DependencyResolutionException,
        IOException, XmlPullParserException, ModelBuildingException {
    MavenBooter booter = new MavenBooter();
    // FIXME we may not have to load the model and resolve it
    MavenXpp3Reader mavenXpp3Reader = new MavenXpp3Reader();
    mavenXpp3Reader.setAddDefaultEntities(false);
    Model pomModel = mavenXpp3Reader.read(mavenPomStream);

    // Model pomModel = loadPom(mavenPomStream, booter, Collections.EMPTY_LIST);

    // List<org.apache.maven.model.Dependency> dependencies = pomModel.getDependencies();
    MavenProject mavenProject = new MavenProject(pomModel);
    Set<Dependency> dependencies = getArtifactsDependencies(mavenProject, booter, excludedScopes);
    Set<String> depsStrings = new HashSet<>(dependencies.size());
    // depsStrings.add("mvn:" + pomModel.getGroupId() + "/" + pomModel.getArtifactId() + "/" +
    // pomModel.getVersion());
    for (Dependency dep : dependencies) {
        depsStrings.add("mvn:" + dep.getArtifact().getGroupId() + "/" + dep.getArtifact().getArtifactId() + "/" //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$
                + dep.getArtifact().getVersion() + "/"
                + (dep.getArtifact().getExtension().equals("") ? "" : dep.getArtifact().getExtension())
                + (dep.getArtifact().getClassifier().equals("") ? ""
                        : ("/" + dep.getArtifact().getClassifier())));
    }
    return depsStrings;
}

From source file:org.tawja.maven.discovery.internal.MavenManager.java

License:Apache License

public MavenProject loadMavenPom(String path) {
    File pomfile = new File(path);
    Model model = null;//from w  w  w .  j a  v  a2  s  .co  m
    FileReader reader = null;
    MavenXpp3Reader mavenreader = new MavenXpp3Reader();
    try {
        reader = new FileReader(pomfile);
        model = mavenreader.read(reader);
        model.setPomFile(pomfile);
    } catch (IOException | XmlPullParserException ex) {

    }
    MavenProject project = new MavenProject(model);

    //return project.getGroupId() + ":" + project.getArtifactId();
    return project;
}