diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/BaseJvmPlugin.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/BaseJvmPlugin.kt index 775f28e9..cfece392 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/BaseJvmPlugin.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/internal/BaseJvmPlugin.kt @@ -26,7 +26,9 @@ abstract class BaseJvmPlugin(open val configActor: ConfigActor) : // IBuildConfigContributor private fun hasSourceFiles(project: Project) - = KFiles.findSourceFiles(project.directory, project.sourceDirectories, listOf("java")).size > 0 + = KFiles.findSourceFiles(project.directory, project.sourceDirectories, sourceSuffixes()).size > 0 fun affinity(project: Project) = if (hasSourceFiles(project)) 1 else 0 + + abstract fun sourceSuffixes() : List } \ No newline at end of file diff --git a/src/main/kotlin/com/beust/kobalt/plugin/java/JavaPlugin.kt b/src/main/kotlin/com/beust/kobalt/plugin/java/JavaPlugin.kt index 26e14977..59db628f 100644 --- a/src/main/kotlin/com/beust/kobalt/plugin/java/JavaPlugin.kt +++ b/src/main/kotlin/com/beust/kobalt/plugin/java/JavaPlugin.kt @@ -17,7 +17,8 @@ class JavaPlugin @Inject constructor(val javaCompiler: JavaCompiler, override va ITestSourceDirectoryContributor, IBuildConfigContributor { companion object { - const val PLUGIN_NAME = "Java" + val PLUGIN_NAME = "Java" + val SOURCE_SUFFIXES = listOf("java") } override val name = PLUGIN_NAME @@ -26,6 +27,8 @@ class JavaPlugin @Inject constructor(val javaCompiler: JavaCompiler, override va override fun affinity(project: Project, context: KobaltContext) = if (accept(project)) 1 else 0 + override fun sourceSuffixes() = SOURCE_SUFFIXES + override fun generateDoc(project: Project, context: KobaltContext, info: CompilerActionInfo) : TaskResult { val result = if (info.sourceFiles.size > 0) { @@ -44,7 +47,7 @@ class JavaPlugin @Inject constructor(val javaCompiler: JavaCompiler, override va configurationFor(project)?.compilerArgs ?: listOf()) // ICompilerContributor - val compiler = CompilerDescription(listOf("java"), "java", javaCompiler) + val compiler = CompilerDescription(SOURCE_SUFFIXES, "java", javaCompiler) override fun compilersFor(project: Project, context: KobaltContext) = listOf(compiler) diff --git a/src/main/kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt b/src/main/kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt index b2fbd258..48f46cc0 100644 --- a/src/main/kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt +++ b/src/main/kotlin/com/beust/kobalt/plugin/kotlin/KotlinPlugin.kt @@ -24,11 +24,14 @@ class KotlinPlugin @Inject constructor(val executors: KobaltExecutors, val depen IBuildConfigContributor { companion object { - const val PLUGIN_NAME = "Kotlin" + val PLUGIN_NAME = "Kotlin" + val SOURCE_SUFFIXES = listOf("kt") } override val name = PLUGIN_NAME + override fun sourceSuffixes() = SOURCE_SUFFIXES + // IDocContributor override fun affinity(project: Project, context: KobaltContext) = if (project.sourceDirectories.any { it.contains("kotlin") }) 2 else 0 @@ -108,7 +111,7 @@ class KotlinPlugin @Inject constructor(val executors: KobaltExecutors, val depen // ICompilerContributor /** The Kotlin compiler should run before the Java one, hence priority - 5 */ - val compiler = CompilerDescription(listOf("kt"), "kotlin", KotlinCompiler(), + val compiler = CompilerDescription(SOURCE_SUFFIXES, "kotlin", KotlinCompiler(), ICompilerDescription.DEFAULT_PRIORITY - 5) override fun compilersFor(project: Project, context: KobaltContext) = arrayListOf(compiler)