@@ -4,17 +4,14 @@ import de.fayard.refreshVersions.core.RefreshVersionsCorePlugin
44import de.fayard.refreshVersions.core.bootstrapRefreshVersionsCore
55import de.fayard.refreshVersions.core.bootstrapRefreshVersionsCoreForBuildSrc
66import de.fayard.refreshVersions.core.extensions.gradle.isBuildSrc
7- import de.fayard.refreshVersions.internal.getArtifactNameToConstantMapping
87import de.fayard.refreshVersions.core.internal.RefreshVersionsConfigHolder
8+ import de.fayard.refreshVersions.internal.getArtifactNameToConstantMapping
99import org.gradle.api.DefaultTask
1010import org.gradle.api.Plugin
1111import org.gradle.api.Project
1212import org.gradle.api.initialization.Settings
13- import org.gradle.kotlin.dsl.apply
14- import org.gradle.kotlin.dsl.create
15- import org.gradle.kotlin.dsl.dependencies
16- import org.gradle.kotlin.dsl.getByType
17- import org.gradle.kotlin.dsl.register
13+ import org.gradle.api.invocation.Gradle
14+ import org.gradle.kotlin.dsl.*
1815
1916open class RefreshVersionsPlugin : Plugin <Any > {
2017
@@ -36,10 +33,21 @@ open class RefreshVersionsPlugin : Plugin<Any> {
3633
3734
3835 override fun apply (target : Any ) {
39- when (target) {
40- is Settings -> bootstrap(target)
41- is Project -> Unit // TODO: Warn about misconfiguration?
36+ require(target is Settings ) {
37+ val notInExtraClause: String = when (target) {
38+ is Project -> when (target) {
39+ target.rootProject -> " , not in build.gradle(.kts)"
40+ else -> " , not in a build.gradle(.kts) file."
41+ }
42+ is Gradle -> " , not in an initialization script."
43+ else -> " "
44+ }
45+ """
46+ plugins.id("de.fayard.refreshVersions") must be configured in settings.gradle(.kts)$notInExtraClause .
47+ See https://jmfayard.github.io/refreshVersions/setup/
48+ """ .trimIndent()
4249 }
50+ bootstrap(target)
4351 }
4452
4553 private fun bootstrap (settings : Settings ) {
@@ -97,7 +105,7 @@ open class RefreshVersionsPlugin : Plugin<Any> {
97105 ) {
98106 group = " help"
99107 description = " Assists migration from hardcoded dependencies to constants of " +
100- " the refreshVersions dependencies plugin"
108+ " the refreshVersions dependencies plugin"
101109 finalizedBy(" refreshVersions" )
102110 }
103111
0 commit comments