[ https://issues.apache.org/jira/browse/MLINKCHECK-26?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Wegener updated MLINKCHECK-26: ------------------------------------- Summary: Linkcheck does not support parallel builds (was: Linkcheck does not support parrallel builds) > Linkcheck does not support parallel builds > ------------------------------------------ > > Key: MLINKCHECK-26 > URL: https://issues.apache.org/jira/browse/MLINKCHECK-26 > Project: Maven Linkcheck Plugin > Issue Type: Bug > Reporter: Daniel Wegener > > Running multi-module-builds in parallel where multiple modules use the > linkcheck plugin can trigger the following exception. > {code} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-linkcheck-plugin:1.2:linkcheck (run-linkcheck) > on project foo.documentation.arc: Execution run-linkcheck of goal > org.apache.maven.plugins:maven-linkcheck-plugin:1.2:linkcheck failed. > ConcurrentModificationException -> [Help 1] > org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute > goal org.apache.maven.plugins:maven-linkcheck-plugin:1.2:linkcheck > (run-linkcheck) on project foo.documentation.arc: Execution run-linkcheck of > goal org.apache.maven.plugins:maven-linkcheck-plugin:1.2:linkcheck failed. > at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212) > at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) > at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) > at > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116) > at > org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:185) > at > org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:181) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.maven.plugin.PluginExecutionException: Execution > run-linkcheck of goal > org.apache.maven.plugins:maven-linkcheck-plugin:1.2:linkcheck failed. > at > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:145) > at > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207) > ... 11 more > Caused by: java.util.ConcurrentModificationException > at java.util.TreeMap$PrivateEntryIterator.nextEntry(TreeMap.java:1207) > at java.util.TreeMap$KeyIterator.next(TreeMap.java:1261) > at > org.apache.maven.doxia.linkcheck.DefaultLinkCheck.check(DefaultLinkCheck.java:505) > at > org.apache.maven.doxia.linkcheck.DefaultLinkCheck.checkFile(DefaultLinkCheck.java:447) > at > org.apache.maven.doxia.linkcheck.DefaultLinkCheck.findAndCheckFiles(DefaultLinkCheck.java:423) > at > org.apache.maven.doxia.linkcheck.DefaultLinkCheck.execute(DefaultLinkCheck.java:232) > at > org.apache.maven.plugins.linkcheck.LinkcheckReport.executeLinkCheck(LinkcheckReport.java:430) > at > org.apache.maven.plugins.linkcheck.LinkcheckReport.execute(LinkcheckReport.java:285) > at > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) > ... 12 more > {code} > Looks like the injected LinkCheck in > https://github.com/apache/maven-plugins/blob/a3f8da79c8d050001524f7ea993c541bc4f79b0e/maven-linkcheck-plugin/src/main/java/org/apache/maven/plugins/linkcheck/LinkcheckReport.java#L74 > (which evaluates to a DefaultLinkCheck: > https://github.com/apache/maven-doxia-tools/blob/doxia-tools-1.2/doxia-linkcheck/src/main/java/org/apache/maven/doxia/linkcheck/DefaultLinkCheck.java#L65) > is not thread-safe. -- This message was sent by Atlassian JIRA (v6.3.4#6332)