diff --git a/src/main/java/org/apache/maven/plugins/toolchain/ToolchainMojo.java b/src/main/java/org/apache/maven/plugins/toolchain/ToolchainMojo.java index 7cef3d7..37ab11a 100644 --- a/src/main/java/org/apache/maven/plugins/toolchain/ToolchainMojo.java +++ b/src/main/java/org/apache/maven/plugins/toolchain/ToolchainMojo.java @@ -42,10 +42,12 @@ * @author mkleint */ @Mojo( name = "toolchain", defaultPhase = LifecyclePhase.VALIDATE, - configurator = "toolchains-requirement-configurator" ) + configurator = "toolchains-requirement-configurator", + threadSafe = true ) public class ToolchainMojo extends AbstractMojo { + private static final Object LOCK = new Object(); /** */ @@ -160,7 +162,10 @@ protected boolean selectToolchain( String type, Map params ) getLog().info( "Found matching toolchain for type " + type + ": " + tc ); // store matching toolchain to build context - toolchainManagerPrivate.storeToolchainToBuildContext( tc, session ); + synchronized ( LOCK ) + { + toolchainManagerPrivate.storeToolchainToBuildContext( tc, session ); + } return true; }