List of usage examples for org.apache.maven.project MavenProject getPackaging
public String getPackaging()
From source file:org.wso2.developerstudio.eclipse.platform.ui.mvn.wizard.MvnMultiModuleWizard.java
License:Open Source License
public boolean performFinish() { // If the multiModuleProject is not empty, then this is thru UI. Just generate the POM MavenProject mavenProject = MavenUtils.createMavenProject(moduleModel.getGroupId(), moduleModel.getArtifactId(), moduleModel.getVersion(), "pom"); if (moduleModel.isRequiredParent()) { Parent parent = new Parent(); parent.setArtifactId(moduleModel.getParentArtifact()); parent.setGroupId(moduleModel.getParentGroup()); parent.setVersion(moduleModel.getParentVersion()); String relativePath = moduleModel.getRelativePath(); if (relativePath != null && !relativePath.trim().isEmpty()) { parent.setRelativePath(relativePath); }/*from ww w . j a v a2s. co m*/ mavenProject.getModel().setParent(parent); } else { mavenProject.getModel().setParent(null); } List modules = mavenProject.getModules(); List<IProject> selectedProjects = moduleModel.getSelectedProjects(); selectedProjects = sortProjects(selectedProjects); if (multiModuleProject != null) { IFile pomFile = multiModuleProject.getFile("pom.xml"); if (pomFile.exists()) { // Parse the pom and see the packaging type try { MavenProject mavenProject2 = MavenUtils.getMavenProject(pomFile.getLocation().toFile()); String packaging = mavenProject2.getPackaging(); if (!"pom".equalsIgnoreCase(packaging)) { addMavenModules(multiModuleProject, mavenProject, modules, selectedProjects, pomFile); } else { modules = mavenProject2.getModules(); mavenProject2.setGroupId(moduleModel.getGroupId()); mavenProject2.setArtifactId(moduleModel.getArtifactId()); mavenProject2.setVersion(moduleModel.getVersion()); mavenProject2.getModel().setParent(mavenProject.getModel().getParent()); addMavenModules(multiModuleProject, mavenProject2, modules, selectedProjects, pomFile); } } catch (Exception e) { log.error("Error occured while trying to generate the Maven Project for the Project Pom", e); } } else { // Since pom is not there, just create the new pom with all the necessary things addMavenModules(multiModuleProject, mavenProject, modules, selectedProjects, pomFile); } // Adding Maven Multi Module Nature to POM generated Project addMavenMultiModuleProjectNature(multiModuleProject); } else { try { moduleModel.setProjectName(moduleModel.getArtifactId()); project = createNewProject(); addMavenMultiModuleProjectNature(project); addMavenModules(project, mavenProject, modules, selectedProjects, project.getFile("pom.xml")); } catch (CoreException e) { log.error("Error occured while creating the new Maven Multi Module Project", e); } catch (ObserverFailedException e) { log.error("Error occured while trying to inject values to the Project Model", e); } } return true; }
From source file:org.wso2.developerstudio.eclipse.platform.ui.provider.MavenParentProjectList.java
License:Open Source License
public List<ListData> getListData(String modelProperty, ProjectDataModel model) { List<ListData> list = new ArrayList<ListData>(); boolean requiredParent = ((MvnMultiModuleModel) model).isRequiredParent(); boolean updateMode = ((MvnMultiModuleModel) model).isUpdateMode(); if (requiredParent && !updateMode) { IWorkspace workspace = ResourcesPlugin.getWorkspace(); IWorkspaceRoot root = workspace.getRoot(); IProject[] projects = root.getProjects(); for (IProject project : projects) { try { if (project.isOpen()) { File pomFile = project.getFile("pom.xml").getLocation().toFile(); if (pomFile.exists()) { MavenProject mavenProject = MavenUtils.getMavenProject(pomFile); if (mavenProject.getPackaging().equals("pom")) { Parent parent = new Parent(); parent.setArtifactId(mavenProject.getArtifactId()); parent.setGroupId(mavenProject.getGroupId()); parent.setVersion(mavenProject.getVersion()); try { String relativePath = FileUtils.getRelativePath(model.getLocation(), pomFile); parent.setRelativePath(relativePath); ListData data = new ListData(parent.getArtifactId(), parent); list.add(data); } catch (Exception ignored) { // ignored }// ww w . j a v a 2 s .co m } } } } catch (Exception e) { log.error("Error reading project list", e); } } } return list; }
From source file:org.wso2.developerstudio.eclipse.platform.ui.wizard.pages.MavenDetailsPage.java
License:Open Source License
private List<Parent> getParentMavenProjects(List<Parent> mavenParentProjects) throws Exception { IWorkspace workspace = ResourcesPlugin.getWorkspace(); IWorkspaceRoot root = workspace.getRoot(); IProject[] projects = root.getProjects(); for (IProject project : projects) { try {//from w w w. j av a 2 s . co m if (project.isOpen()) { File pomFile = project.getFile("pom.xml").getLocation().toFile(); if (pomFile.exists()) { MavenProject mavenProject = MavenUtils.getMavenProject(pomFile); if (mavenProject.getPackaging().equals("pom")) { Parent parent = new Parent(); parent.setArtifactId(mavenProject.getArtifactId()); parent.setGroupId(mavenProject.getGroupId()); parent.setVersion(mavenProject.getVersion()); try { String relativePath = FileUtils.getRelativePath(dataModel.getLocation(), pomFile); parent.setRelativePath(relativePath); mavenParentProjects.add(parent); } catch (Exception ignored) { // ignored } } } } } catch (Exception e) { log.error("Error reading project list", e); } } File parentLocation = dataModel.getLocation(); /*while (parentLocation != null) { File pomFile = new File(parentLocation, "pom.xml"); if (pomFile.exists()) { MavenProject mavenProject = MavenUtils.getMavenProject(pomFile); if (mavenProject.getPackaging().equals("pom")) { Parent parent = new Parent(); parent.setArtifactId(mavenProject.getArtifactId()); parent.setGroupId(mavenProject.getGroupId()); parent.setVersion(mavenProject.getVersion()); try { String relativePath = FileUtils.getRelativePath( dataModel.getLocation(), pomFile); parent.setRelativePath(relativePath); mavenParentProjects.add(parent); } catch (Exception ignored) { // ignored } } } parentLocation = parentLocation.getParentFile(); }*/ return mavenParentProjects; }
From source file:org.wso2.maven.pckg.prepare.PackagePrepareDefaultScopeMojo.java
License:Open Source License
private void filterAllCappProjects(List<MavenProject> mavenProjects) { cappMavenProjects = new ArrayList<>(); for (MavenProject mavenProject : mavenProjects) { String packaging = mavenProject.getPackaging(); if (packaging != null && packaging.equals(MavenConstants.CAPP_PACKAGING)) { if (isDebugEnabled) { log.debug("Identified the composite application project: " + mavenProject.getGroupId() + ":" + mavenProject.getArtifactId() + ":" + mavenProject.getVersion()); }/* w w w. ja v a 2 s. com*/ cappMavenProjects.add(mavenProject); } } }
From source file:org.wso2.maven.pckg.prepare.PackagePrepareSystemScopeMojo.java
License:Open Source License
private void aggregateDependencies(List<MavenProject> mavenProjects) { dependencySystemPathMap = new HashMap<>(); for (MavenProject mavenProject : mavenProjects) { String packaging = mavenProject.getPackaging(); // CAPP projects are ignored. if (packaging == null || !MavenConstants.CAPP_PACKAGING.equals(packaging)) { try { dependencySystemPathMap.putAll(PackagePrepareUtils.getArtifactsSystemPathMap(mavenProject)); } catch (FactoryConfigurationError | Exception e) { // Can proceed even if this is reached log.warn("Failed to retrieve dependencies from project: " + mavenProject.getGroupId() + ":" + mavenProject.getArtifactId() + ":" + mavenProject.getVersion(), e); }//from ww w . j a v a 2s . c o m } } if (isDebugEnabled) { Iterator<Entry<String, String>> dependencyIterator = dependencySystemPathMap.entrySet().iterator(); while (dependencyIterator.hasNext()) { log.debug("Identified system path of: " + dependencyIterator.next().getKey()); } } }
From source file:org_scala_tools_maven.ScalaDocMojo.java
License:Apache License
@SuppressWarnings("unchecked") protected void aggregate(MavenProject parent) throws Exception { List<MavenProject> modules = parent.getCollectedProjects(); File dest = new File(parent.getReporting().getOutputDirectory() + "/" + outputDirectory); getLog().info("start aggregation into " + dest); StringBuilder mpath = new StringBuilder(); for (MavenProject module : modules) { if ("pom".equals(module.getPackaging().toLowerCase())) { continue; }//from w w w .j a v a 2s .c om if (aggregateDirectOnly && module.getParent() != parent) { continue; } File subScaladocPath = new File(module.getReporting().getOutputDirectory() + "/" + outputDirectory) .getAbsoluteFile(); //System.out.println(" -> " + project.getModulePathAdjustment(module) +" // " + subScaladocPath + " // " + module.getBasedir() ); if (subScaladocPath.exists()) { mpath.append(subScaladocPath).append(File.pathSeparatorChar); } } if (mpath.length() != 0) { getLog().info("aggregate vscaladoc from : " + mpath); JavaMainCaller jcmd = getScalaCommand(); jcmd.addOption("-d", dest.getAbsolutePath()); jcmd.addOption("-aggregate", mpath.toString()); jcmd.run(displayCmd); } else { getLog().warn("no vscaladoc to aggregate"); } tryAggregateUpper(parent); }
From source file:pl.project13.maven.git.GitCommitIdMojo.java
License:Open Source License
boolean isPomProject(@NotNull MavenProject project) { return project.getPackaging().equalsIgnoreCase("pom"); }
From source file:se.jguru.nazgul.tools.codestyle.enforcer.rules.ProjectType.java
License:Apache License
/** * Acquires the ProjectType instance for the provided MavenProject, * or throws an IllegalArgumentException holding an exception message * if a ProjectType could not be found for the provided MavenProject. * * @param project The MavenProject to classify. * @return The corresponding ProjectType. * @throws IllegalArgumentException if the given project could not be mapped to a [single] ProjectType. * The exception message holds *///from w ww . j a v a 2 s .c o m public static ProjectType getProjectType(final MavenProject project) throws IllegalArgumentException { Validate.notNull(project, "Cannot handle null project argument."); final List<ProjectType> matches = findCandidates(project.getGroupId(), project.getArtifactId(), project.getPackaging(), "Incorrect project type definition for [" + project.getGroupId() + " :: " + project.getArtifactId() + " :: " + project.getVersion() + "]: "); // Validate the internal requirements for the two different pom projects. final ProjectType toReturn = matches.get(0); switch (toReturn) { case PARENT: case ASSEMBLY: // This project should not contain modules. if (project.getModules() != null && !project.getModules().isEmpty()) { throw new IllegalArgumentException( ProjectType.PARENT + " projects may not contain module definitions. " + "(Modules are reserved for reactor projects)."); } break; case REACTOR: // This project not contain dependency definitions. final List<?> dependencies = project.getDependencies(); if (dependencies != null && !dependencies.isEmpty()) { throw new IllegalArgumentException( ProjectType.REACTOR + " projects may not contain dependency definitions." + " (Dependencies should be defined within parent projects)."); } final DependencyManagement dependencyManagement = project.getDependencyManagement(); if (dependencyManagement != null) { // Dig out all dependency management-defined dependencies. final List<Dependency> templateDependencies = dependencyManagement.getDependencies(); if (templateDependencies != null && !templateDependencies.isEmpty()) { throw new IllegalArgumentException( ProjectType.REACTOR + " projects may not contain dependency [management] definitions." + " (Dependencies should be defined within parent projects)."); } } break; // No action should be taken for other project types. default: break; } // All done. return toReturn; }