From 9a40e9b96d4475f86605cc0ff2f48cbbb2e422a9 Mon Sep 17 00:00:00 2001 From: Bill Collins Date: Wed, 24 May 2017 10:00:09 +0300 Subject: [PATCH] Don't overwrite plugin classpaths detected earlier for annotation processing. Fixes #KT-18022 --- .../kotlin/maven/KotlinCompileMojoBase.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/libraries/tools/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/KotlinCompileMojoBase.java b/libraries/tools/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/KotlinCompileMojoBase.java index 50c7e7d60d8..685d02808c8 100644 --- a/libraries/tools/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/KotlinCompileMojoBase.java +++ b/libraries/tools/kotlin-maven-plugin/src/main/java/org/jetbrains/kotlin/maven/KotlinCompileMojoBase.java @@ -466,10 +466,18 @@ public abstract class KotlinCompileMojoBase e List pluginClassPaths = getCompilerPluginClassPaths(); if (pluginClassPaths != null && !pluginClassPaths.isEmpty()) { - if (getLog().isDebugEnabled()) { - getLog().debug("Plugin classpaths are: " + Joiner.on(", ").join(pluginClassPaths)); + if (arguments.pluginClasspaths == null || arguments.pluginClasspaths.length == 0) { + arguments.pluginClasspaths = pluginClassPaths.toArray(new String[pluginClassPaths.size()]); + } else { + for (String path : pluginClassPaths) { + arguments.pluginClasspaths = ArrayUtil.append(arguments.pluginClasspaths, path); + } } - arguments.pluginClasspaths = pluginClassPaths.toArray(new String[pluginClassPaths.size()]); + + if (getLog().isDebugEnabled()) { + getLog().debug("Plugin classpaths are: " + Joiner.on(", ").join(arguments.pluginClasspaths)); + } + } List pluginArguments;