Hi,
In a multi module project, using surefire and surefire report 2.4, testng
5.7 and dashoard 1.0-SNAPSHOT, I get a NullPointerException if running mvn
site:site and there are failing unit tests.
Enviroment -
Win XP or Linux
Maven version: 2.0.8
Java version: 1.5.0_14
All configuration is on parent pom.xml and the relevant parts contains:
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4</version>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
<groups>fast</groups>
<excludedgroups>broken</excludedgroups>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.0.1</version>
<reportSets>
<reportSet>
<reports>
<report>dependencies</report>
<report>dependency-convergence</report>
<report>index</report>
<report>summary</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.1</version>
</plugin>
<plugin>
<artifactId>maven-pmd-plugin</artifactId>
<version>2.3</version>
<configuration>
<linkXref>true</linkXref>
<targetJdk>1.5</targetJdk>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>javancss-maven-plugin</artifactId>
<version>2.0-beta-2</version>
<configuration>
<failOnViolation>false</failOnViolation>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.4</version>
<configuration>
<linkXRef>true</linkXRef>
<xrefLocation>${project.reporting.outputDirectory
}/xref-test</xrefLocation>
</configuration>
<reportSets>
<reportSet>
<reports>
<report>report-only</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>dashboard-maven-plugin</artifactId>
<version>1.0-SNAPSHOT</version>
</plugin>
</plugins>
</reporting>
<pluginRepositories>
<pluginRepository>
<id>Codehaus Snapshots</id>
<url>http://snapshots.repository.codehaus.org/</url>
</pluginRepository>
</pluginRepositories>
If I don't have any test failure, all work well.
But, if one of my unit tests fail, I get a NullPointerException. If I
comment the dashboard-maven-plugin from my pom, it works well too.
Please advise, thanks,
Erez.
Here is the exception:
[INFO] [site:site]
[INFO] Generating "Dependencies" report.
[INFO] Generating "Dependency Convergence" report.
[INFO] Generating "About" report.
[INFO] Generating "Project Summary" report.
[INFO] Generating "CPD Report" report.
[INFO] Generating "PMD Report" report.
[INFO] Generating "JavaNCSS Report" report.
[INFO] Generating "Maven Surefire Report" report.
[INFO] Generating "Global DashBoard Report" report.
[INFO] MultiReportMojo project = parent
[INFO] MultiReportMojo nb modules = 3
[INFO] MultiReportMojo base directory = c:\dev\maven\mvn-test-project
[INFO] MultiReportMojo output directory =
c:\dev\maven\mvn-test-project\target\
ite
[INFO] MultiReportMojo report output directory =
c:\dev\maven\mvn-test-project\
arget\site
[INFO] MultiReportMojo project language = none
[INFO]
------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO]
------------------------------------------------------------------------
[INFO] null
[INFO]
------------------------------------------------------------------------
[INFO] Trace
java.lang.NullPointerException
at
org.apache.maven.plugins.surefire.report.ReportTestSuite.characters(
eportTestSuite.java:181)
at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.charact
rs(AbstractSAXParser.java:570)
at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerIm
l.scanCDATASection(XMLDocumentFragmentScannerImpl.java:1119)
at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerIm
l$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java
:1740)
at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerIm
l.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(
ML11Configuration.java:834)
at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(
ML11Configuration.java:764)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse
(XMLParser
java:148)
at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(A
stractSAXParser.java:1242)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:311)
at org.apache.maven.plugins.surefire.report.ReportTestSuite.parse
(Repor
TestSuite.java:71)
at
org.apache.maven.plugins.surefire.report.SurefireReportParser.parseX
LReportFiles(SurefireReportParser.java:70)
at
org.codehaus.mojo.dashboard.report.plugin.DashBoardUtils.getSurefire
eport(DashBoardUtils.java:566)
at
org.codehaus.mojo.dashboard.report.plugin.DashBoardUtils.getDashBoar
MavenProject(DashBoardUtils.java:268)
at
org.codehaus.mojo.dashboard.report.plugin.DashBoardUtils.getDashBoar
MavenProject(DashBoardUtils.java:242)
at
org.codehaus.mojo.dashboard.report.plugin.DashBoardReportMojo.execut
Report(DashBoardReportMojo.java:263)
at org.apache.maven.reporting.AbstractMavenReport.generate
(AbstractMave
Report.java:98)
at
org.apache.maven.plugins.site.ReportDocumentRenderer.renderDocument(
eportDocumentRenderer.java:139)
at
org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderModule
DefaultSiteRenderer.java:269)
at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.render
(Defau
tSiteRenderer.java:101)
at org.apache.maven.plugins.site.SiteMojo.renderLocale(SiteMojo.java
:12
)
at org.apache.maven.plugins.site.SiteMojo.execute(SiteMojo.java:96)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo
(DefaultPlug
nManager.java:447)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals
(Def
ultLifecycleExecutor.java:539)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandalon
Goal(DefaultLifecycleExecutor.java:493)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal
(Defa
ltLifecycleExecutor.java:463)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHa
dleFailures(DefaultLifecycleExecutor.java:311)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegme
ts(DefaultLifecycleExecutor.java:278)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute
(DefaultL
fecycleExecutor.java:143)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:282)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAcce
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java
:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java
:430
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 14 seconds
[INFO] Finished at: Wed Jan 23 15:47:03 IST 2008
[INFO] Final Memory: 25M/45M
[INFO]
------------------------------------------------------------------------