mvn site:siteでやたらスタックトレースが出力される
はじめに
実用上問題ないのですが、mvn site:siteを実行するとスタックトレースがいっぱい出力されます。
無視して良いのか気になったので調べてみました。
事象
mvn site:site実行時に以下のようなスタックトレースが出力されます。
(中略) [INFO] configuring report plugin org.apache.maven.plugins:maven-project-info-reports-plugin:3.0.0 [INFO] 15 reports detected for maven-project-info-reports-plugin:3.0.0: ci-management, dependencies, dependency-info, dependency-management, distribution-management, index, issue-management, licenses, mailing-lists, modules, plugin-management, plugins, scm, summary, team [INFO] Rendering site with default locale English (en) [INFO] Relativizing decoration links with respect to localized project URL: https://github.com/nablarch/my-app-web-maven-site [INFO] Rendering content with org.apache.maven.skins:maven-default-skin:jar:1.2 skin. [INFO] Generating "Dependencies" report --- maven-project-info-reports-plugin:3.0.0:dependencies [WARNING] Unable to create Maven project from repository. org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs: [WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-surefire-plugin is missing. @ line 188, column 15 [ERROR] 'distributionManagement.status' must not be specified. @ line 248, column 13 at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:205) at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:340) at org.apache.maven.report.projectinfo.dependencies.RepositoryUtils.getMavenProjectFromRepository (RepositoryUtils.java:125) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderArtifactRow (DependenciesRenderer.java:799) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderDependenciesForScope (DependenciesRenderer.java:749) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderDependenciesForAllScopes (DependenciesRenderer.java:417) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderSectionProjectTransitiveDependencies (DependenciesRenderer.java:438) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderBody (DependenciesRenderer.java:219) at org.apache.maven.reporting.AbstractMavenReportRenderer.render (AbstractMavenReportRenderer.java:80) at org.apache.maven.report.projectinfo.DependenciesReport.executeReport (DependenciesReport.java:162) at org.apache.maven.reporting.AbstractMavenReport.generate (AbstractMavenReport.java:251) at org.apache.maven.plugins.site.render.ReportDocumentRenderer.renderDocument (ReportDocumentRenderer.java:230) at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.render (DefaultSiteRenderer.java:349) at org.apache.maven.plugins.site.render.SiteMojo.renderLocale (SiteMojo.java:198) at org.apache.maven.plugins.site.render.SiteMojo.execute (SiteMojo.java:147) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288) at org.apache.maven.cli.MavenCli.main (MavenCli.java:192) at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:498) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) Caused by: org.apache.maven.model.building.ModelBuildingException: 2 problems were encountered while building the effective model for jaxen:jaxen:1.1.1 [WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-surefire-plugin is missing. @ line 188, column 15 [ERROR] 'distributionManagement.status' must not be specified. @ line 248, column 13 at org.apache.maven.model.building.DefaultModelProblemCollector.newModelBuildingException (DefaultModelProblemCollector.java:197) at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:490) at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:432) at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:422) at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:171) at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:340) at org.apache.maven.report.projectinfo.dependencies.RepositoryUtils.getMavenProjectFromRepository (RepositoryUtils.java:125) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderArtifactRow (DependenciesRenderer.java:799) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderDependenciesForScope (DependenciesRenderer.java:749) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderDependenciesForAllScopes (DependenciesRenderer.java:417) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderSectionProjectTransitiveDependencies (DependenciesRenderer.java:438) at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderBody (DependenciesRenderer.java:219) at org.apache.maven.reporting.AbstractMavenReportRenderer.render (AbstractMavenReportRenderer.java:80) at org.apache.maven.report.projectinfo.DependenciesReport.executeReport (DependenciesReport.java:162) at org.apache.maven.reporting.AbstractMavenReport.generate (AbstractMavenReport.java:251) at org.apache.maven.plugins.site.render.ReportDocumentRenderer.renderDocument (ReportDocumentRenderer.java:230) at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.render (DefaultSiteRenderer.java:349) at org.apache.maven.plugins.site.render.SiteMojo.renderLocale (SiteMojo.java:198) at org.apache.maven.plugins.site.render.SiteMojo.execute (SiteMojo.java:147) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288) at org.apache.maven.cli.MavenCli.main (MavenCli.java:192) at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:498) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) [WARNING] Unable to create Maven project from repository for artifact jaxen:jaxen:jar:1.1.1 (中略)
原因
mvn-site-plugin中にdistributionManagement.statusの値のチェックがあるのが原因です。
以下に説明が載っています。
http://maven.40175.n5.nabble.com/Trying-to-fix-integration-tests-of-mvn-site-plugin-td5950400.html
.m2/repository/jaxen/jaxen/1.1.1/jaxen-1.1.1.pomをみてみたら、以下の記述がありました。
これのstatus要素がチェックに引っかかってるんですね。
<distributionManagement> <repository> <id>default</id> <name>Default Repository</name> <url>file:///dist</url> </repository> <site> <id>default</id> <name>Default Site</name> <url>scp://jaxen.codehaus.org//home/projects/jaxen/public_html</url> </site> <status>converted</status> </distributionManagement>jaxen-1.1.1.pomを直接編集してstatus要素を消すと、このスタックトレースは出なくなります。
どう対策する?
現状ではこのスタックトレースが出るのは無視するのが良さそうです。
前述のhttp://maven.40175.n5.nabble.com/Trying-to-fix-integration-tests-of-mvn-site-plugin-td5950400.htmlをみるといつかはApache Maven Site Pluginが治りそうですが、まだ治ったバージョンはリリースされていないためです。
さいごに
設定ミスったのかなーと最初は不安に思っていたのですが、そうじゃなかったので安心しました。