List of usage examples for org.apache.maven.project MavenProject getName
public String getName()
From source file:org.codehaus.continuum.builder.maven2.Maven2ContinuumBuilder.java
License:Open Source License
public ContinuumProject createProject(File workingDirectory) throws ContinuumException { Maven2ProjectDescriptor descriptor = new Maven2ProjectDescriptor(); // try // {//from w w w . j a v a 2s . c o m // scm.checkOutProject( project ); // } // catch( ContinuumScmException ex ) // { // throw new ContinuumException( "Error while checking out the project.", ex ); // } MavenProject mavenProject; File pomFile = getPomFile(workingDirectory); mavenProject = mavenTool.getProject(pomFile); List goals = new LinkedList(); goals.add("pom:install"); mavenTool.execute(mavenProject, goals); // ---------------------------------------------------------------------- // Populating the descriptor // ---------------------------------------------------------------------- if (mavenProject.getScm() == null) { throw new ContinuumException("The project descriptor is missing the SCM section."); } if (mavenProject.getCiManagement() == null) { throw new ContinuumException("The project descriptor is missing the CI section."); } Build build = mavenProject.getBuild(); boolean isPom = true; if (build != null) { String sourceDirectory = build.getSourceDirectory(); if (sourceDirectory != null && sourceDirectory.trim().length() > 0) { if (new File(sourceDirectory).isDirectory()) { isPom = false; } } } if (isPom) { descriptor.getGoals().add("pom:install"); } else { descriptor.getGoals().add("clean:clean"); descriptor.getGoals().add("jar:install"); } // descriptor.setName( mavenProject.getName() ); // The public Url takes priority over the developer connection Scm scm = mavenProject.getScm(); String scmUrl = scm.getConnection(); if (StringUtils.isEmpty(scmUrl)) { scmUrl = scm.getDeveloperConnection(); } if (StringUtils.isEmpty(scmUrl)) { throw new ContinuumException("Missing both anonymous and developer scm connection urls."); } // descriptor.setScmUrl( scmUrl ); CiManagement ciManagement = mavenProject.getCiManagement(); String nagEmailAddress = ciManagement.getNagEmailAddress(); if (StringUtils.isEmpty(nagEmailAddress)) { throw new ContinuumException( "Missing nag email address from the ci section of the project descriptor."); } // descriptor.setNagEmailAddress( nagEmailAddress ); String version = mavenProject.getVersion(); if (StringUtils.isEmpty(version)) { throw new ContinuumException("Missing version from the project descriptor."); } // descriptor.setVersion( version ); // ---------------------------------------------------------------------- // Make the project // ---------------------------------------------------------------------- ContinuumProject project = new GenericContinuumProject(); if (StringUtils.isEmpty(mavenProject.getName())) { throw new ContinuumException("The project name cannot be empty."); } project.setName(mavenProject.getName()); project.setScmUrl(scmUrl); project.setNagEmailAddress(nagEmailAddress); project.setVersion(version); project.setDescriptor(descriptor); return project; }
From source file:org.codehaus.mojo.cobertura.CoberturaReportMojo.java
License:Apache License
/** * Generates an aggregate cobertura report for the given project. *///ww w . jav a 2s . co m private void executeAggregateReport(Locale locale, MavenProject curProject) throws MavenReportException { List<MavenProject> children = getAllChildren(curProject); if (children.isEmpty()) { return; } List<File> serFiles = getOutputFiles(children); if (serFiles.isEmpty()) { getLog().info("Not executing aggregate cobertura:report for " + curProject.getName() + " as no child cobertura data files could not be found"); return; } getLog().info("Executing aggregate cobertura:report for " + curProject.getName()); ProjectData aggProjectData = new ProjectData(); for (File serFile : serFiles) { ProjectData data = CoverageDataFileHandler.loadCoverageData(serFile); aggProjectData.merge(data); } File aggSerFile = new File(curProject.getBasedir(), relDataFileName); aggSerFile.getAbsoluteFile().getParentFile().mkdirs(); getLog().info("Saving aggregate cobertura information in " + aggSerFile.getAbsolutePath()); CoverageDataFileHandler.saveCoverageData(aggProjectData, aggSerFile); // get all compile source roots List<String> aggCompileSourceRoots = new ArrayList<String>(); for (MavenProject child : children) { aggCompileSourceRoots.addAll(child.getCompileSourceRoots()); } File reportDir = new File(curProject.getBasedir(), relAggregateOutputDir); reportDir.mkdirs(); executeReport(aggSerFile, reportDir, aggCompileSourceRoots); }
From source file:org.codehaus.mojo.cruisecontrol.CruiseControlMojo.java
License:Apache License
/** * /*from w w w. ja v a 2s .co m*/ */ public void execute() throws MojoExecutionException, MojoFailureException { if (buildProjects.contains(project)) { getLog().debug("skipping... Config for project already made"); return; } PrintWriter printWriter = getPrintWriter(); PrettyPrintXMLWriter writer = new PrettyPrintXMLWriter(printWriter); writer.startElement("cruisecontrol"); addGlobalSettings(writer); addGlobalPlugins(writer); Iterator iter = reactorProjects.iterator(); while (iter.hasNext()) { MavenProject reactorProject = (MavenProject) iter.next(); writer.startElement("project"); writer.addAttribute("name", reactorProject.getName()); addLog(writer, reactorProject); CruiseControlModificationSetConfigurer.addModificationSet(writer, reactorProject); addSchedule(writer, reactorProject); addPublishers(writer, reactorProject); writer.endElement(); buildProjects.add(reactorProject); } writer.endElement(); printWriter.flush(); printWriter.close(); }
From source file:org.codehaus.mojo.dashboard.report.plugin.DashBoardUtils.java
License:Apache License
public DashBoardMavenProject getDashBoardMavenProject(MavenProject project, String dashboardDataFile, Date generatedDate) {/*w w w.j a v a2s . c o m*/ String projectName = project.getName(); // Fixes MOJO-801. NPE in a particular three level multimodule build this.fillProjectMap(project); DashBoardMavenProject mavenProject; if (project.getModules().size() > 0) { // String artefactId = project.getGroupId() + "." + project.getArtifactId(); mavenProject = new DashBoardMavenProject(project.getArtifactId(), project.getGroupId(), projectName, project.getVersion()); for (int i = 0; i < project.getModules().size(); i++) { String modulename = (String) project.getModules().get(i); MavenProject proj = this.getModuleMavenProject(project, modulename); String key = proj.getGroupId() + "." + proj.getArtifactId(); if (this.projectMap.containsKey(key)) { MavenProject realproj = (MavenProject) this.projectMap.get(key); DashBoardMavenProject subMavenProject = dashBoardUtils.getDashBoardMavenProject(realproj, dashboardDataFile, generatedDate); mavenProject.addModule(subMavenProject); } } } else { mavenProject = new DashBoardMavenProject(project.getArtifactId(), project.getGroupId(), projectName, project.getVersion()); for (Iterator reports = project.getReportPlugins().iterator(); reports.hasNext();) { ReportPlugin report = (ReportPlugin) reports.next(); String artifactId = report.getArtifactId(); AbstractReportBean dashBoardReport = null; if ("maven-checkstyle-plugin".equals(artifactId) || "checkstyle-maven-plugin".equals(artifactId)) { dashBoardReport = this.getCheckstyleReport(project, generatedDate); } else if ("maven-clover-plugin".equals(artifactId)) { dashBoardReport = this.getCloverReport(project, generatedDate); } else if ("maven-surefire-report-plugin".equals(artifactId) || "surefire-report-maven-plugin".equals(artifactId)) { dashBoardReport = this.getSurefireReport(project, generatedDate); } else if ("cobertura-maven-plugin".equals(artifactId) || "maven-cobertura-plugin".equals(artifactId)) { dashBoardReport = this.getCoberturaReport(project, generatedDate); } else if ("maven-pmd-plugin".equals(artifactId) || "pmd-maven-plugin".equals(artifactId)) { dashBoardReport = this.getCpdReport(project, generatedDate); if (dashBoardReport != null) { mavenProject.addReport(dashBoardReport); } dashBoardReport = this.getPmdReport(project, generatedDate); } else if ("maven-findbugs-plugin".equals(artifactId) || "findbugs-maven-plugin".equals(artifactId)) { dashBoardReport = this.getFindBugsReport(project, generatedDate); } else if ("maven-jdepend-plugin".equals(artifactId) || "jdepend-maven-plugin".equals(artifactId)) { if (!this.dbPersist) { dashBoardReport = this.getJDependReport(project, generatedDate); } } else if ("maven-taglist-plugin".equals(artifactId) || "taglist-maven-plugin".equals(artifactId)) { dashBoardReport = this.getTaglistReport(project, generatedDate); } if (dashBoardReport != null) { mavenProject.addReport(dashBoardReport); } } } return mavenProject; }
From source file:org.codehaus.mojo.dashboard.report.plugin.DashBoardUtils.java
License:Apache License
/** * get the JDependReportBean which represents the Cobertura .ser file analysis * //from www. j a v a 2 s . co m * @param project * @return */ protected JDependReportBean getJDependReport(MavenProject project, Date generatedDate) { this.log.debug("JDependReportBean creation = " + project.getName() + "."); JDependReportBean jDependReport = new JDependReportBean(generatedDate); File coberturaFile = getCoberturaDataFile(project); File jDependFile = new File(project.getBuild().getDirectory(), this.jDependDataFile); ProjectData projectData = null; if (coberturaFile.exists() && coberturaFile.isFile()) { projectData = CoverageDataFileHandler.loadCoverageData(coberturaFile); } if (jDependFile.exists() && jDependFile.isFile()) { JDependXMLReportParser xmlParser; try { xmlParser = new JDependXMLReportParser(jDependFile); List packages = xmlParser.getPackages(); if (packages != null && packages.size() > 0) { Iterator iter = packages.iterator(); while (iter.hasNext()) { JDPackage pack = (JDPackage) iter.next(); XRefPackageBean bean = new XRefPackageBean(); bean.setPackageName(pack.getPackageName()); int iCa = Integer.parseInt(pack.getStats().getCa()); bean.setAfferentCoupling(new Integer(iCa)); if (projectData != null) { CoverageData data = projectData.getChild(pack.getPackageName()); if (data != null) { bean.setLineCoverRate(data.getLineCoverageRate()); bean.setBranchCoverRate(data.getBranchCoverageRate()); } } jDependReport.addPackage(bean); } } else { jDependReport = null; } } catch (ParserConfigurationException e) { this.log.error("JDependReportBean creation failed.", e); jDependReport = null; } catch (SAXException e) { this.log.error("JDependReportBean creation failed.", e); jDependReport = null; } catch (IOException e) { this.log.error("JDependReportBean creation failed.", e); jDependReport = null; } } else { jDependReport = null; } return jDependReport; }
From source file:org.codehaus.mojo.dashboard.report.plugin.DashBoardUtils.java
License:Apache License
/** * @param project//from w w w.jav a 2s. c o m * @param dashboardDataFile * @return */ protected DashBoardMavenProject readXMLDashBoardReport(MavenProject project, String dashboardDataFile) { DashBoardMavenProject mavenProject = null; try { // Instanciation de la classe XStream XStream xstream = new XStream(new DomDriver()); // Instanciation d'un fichier File fichier = new File(project.getBuild().getDirectory(), dashboardDataFile); // Redirection du fichier /target/dashboard-report.xml vers un flux // d'entre fichier FileInputStream fis = new FileInputStream(fichier); try { xstream.setMode(XStream.NO_REFERENCES); // Convertion du contenu de l'objet DashBoardReportBean en XML xstream.alias("MavenProject", DashBoardMavenProject.class); xstream.alias("xrefpackage", XRefPackageBean.class); xstream.alias("checkstyleerror", CheckstyleError.class); xstream.useAttributeFor("id", Long.class); xstream.useAttributeFor("artifactId", String.class); xstream.useAttributeFor("groupId", String.class); xstream.useAttributeFor("version", String.class); xstream.useAttributeFor("projectName", String.class); xstream.useAttributeFor("generatedDate", Date.class); xstream.useAttributeFor("averageAfferentCoupling", String.class); xstream.useAttributeFor("nbPackages", String.class); xstream.useAttributeFor("sumAC", String.class); // Dsrialisation du fichier /target/dashboard-multi-report.xml vers un nouvel // objet DashBoardReportBean mavenProject = (DashBoardMavenProject) xstream.fromXML(fis); } finally { // On s'assure de fermer le flux quoi qu'il arrive fis.close(); } } catch (FileNotFoundException e) { System.out.println( "readXMLDashBoardReport() for project " + project.getName() + " failed :" + e.getMessage()); mavenProject = null; } catch (IOException ioe) { System.out.println( "readXMLDashBoardReport() for project " + project.getName() + " failed :" + ioe.getMessage()); mavenProject = null; } return mavenProject; }
From source file:org.codehaus.mojo.dashboard.report.plugin.utils.DashXStreamUtils.java
License:Apache License
/** * /*from www . j av a 2 s .co m*/ * @param project * @param dashboardDataFile * @return * @throws DashXStreamUtilsException */ public DashBoardMavenProject readXMLDashBoardReport(MavenProject project, String dashboardDataFile) throws DashXStreamUtilsException { DashBoardMavenProject mavenProject = null; try { // Instanciation d'un fichier File fichier = new File(project.getBuild().getDirectory(), dashboardDataFile); // Redirection du fichier /target/dashboard-report.xml vers un flux // d'entre fichier FileInputStream fis = new FileInputStream(fichier); try { // Dsrialisation du fichier /target/dashboard-multi-report.xml vers un nouvel // objet DashBoardReportBean mavenProject = (DashBoardMavenProject) xstream.fromXML(fis); } finally { // On s'assure de fermer le flux quoi qu'il arrive fis.close(); } } catch (FileNotFoundException e) { System.out.println( "readXMLDashBoardReport() for project " + project.getName() + " failed :" + e.getMessage()); throw new DashXStreamUtilsException( "readXMLDashBoardReport() for project " + project.getName() + " failed .", e.fillInStackTrace()); } catch (IOException ioe) { throw new DashXStreamUtilsException( "readXMLDashBoardReport() for project " + project.getName() + " failed .", ioe.fillInStackTrace()); } return mavenProject; }
From source file:org.codehaus.mojo.dashboard.report.plugin.utils.DashXStreamUtils.java
License:Apache License
/** * /*from w w w.j a va 2s . c om*/ * @param project * @param mavenProject * @param dashboardDataFile * @throws DashXStreamUtilsException */ public void saveXMLDashBoardReport(MavenProject project, DashBoardMavenProject mavenProject, String dashboardDataFile) throws DashXStreamUtilsException { try { // Instanciation d'un fichier File dir = new File(project.getBuild().getDirectory()); if (!dir.exists()) { dir.mkdirs(); } File fichier = new File(dir, dashboardDataFile); // Instanciation d'un flux de sortie fichier vers le xml FileOutputStream fos = new FileOutputStream(fichier); OutputStreamWriter output = new OutputStreamWriter(fos, "UTF-8"); try { output.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); // Srialisation de l'objet dashBoardReport dans /target/dashboard-report.xml xstream.toXML(mavenProject, output); } finally { // On s'assure de fermer le flux quoi qu'il arrive fos.close(); } } catch (FileNotFoundException e) { throw new DashXStreamUtilsException( "saveXMLDashBoardReport() for project " + project.getName() + " failed .", e.fillInStackTrace()); } catch (IOException ioe) { throw new DashXStreamUtilsException( "saveXMLDashBoardReport() for project " + project.getName() + " failed .", ioe.fillInStackTrace()); } }
From source file:org.codehaus.mojo.license.ArtifactHelper.java
License:Open Source License
public static String getArtifactName(MavenProject project) { StringBuilder sb = new StringBuilder(); if (project.getName().startsWith("Unnamed -")) { // as in Maven 3, let's use the artifact id sb.append(project.getArtifactId()); } else {// ww w. j a v a 2 s.c om sb.append(project.getName()); } sb.append(" ("); sb.append(project.getGroupId()); sb.append(":"); sb.append(project.getArtifactId()); sb.append(":"); sb.append(project.getVersion()); sb.append(" - "); String url = project.getUrl(); sb.append(url == null ? "no url defined" : url); sb.append(")"); return sb.toString(); }
From source file:org.codehaus.mojo.license.utils.MojoHelper.java
License:Open Source License
public static String getProjectName(MavenProject project) { String sb;/*from w w w . j a v a2 s . c om*/ if (project.getName().startsWith("Unnamed")) { // as in Maven 3, let's use the artifact id sb = project.getArtifactId(); } else { sb = project.getName(); } return sb; }