Reputation: 631
I want to migrate from Groovy to Kotlin DSL in my gradle build script. I have 2 scripts in the project: build.gradle
and publish-maven.gradle
which is attached in the first one.
For Groovy I apply the script like that:
apply from: "${rootProject.projectDir}/publish-maven.gradle"
For Kotlin, I found the same code will look like that:
apply(from = "publish-maven.gradle.kts")
But publish-maven.gradle.kts
isn't attached to build.gradle.kts
. At the top of the script the IDE constantly shows warning:
Code insight unavailable (configuration for this script wasn't received during the last Gradle project import)
and Kotlin syntax isn't recognised.
I also tried
apply(from = "${rootProject.projectDir}/publish-maven.gradle.kts")
or have found other examples but non of them helped.
What do I have to do to apply this script? Or the general question is how can I split build script into several files?
Gradle version: 6.7; JDK: 1.8; IDE: IntellijIdea
Upvotes: 21
Views: 12362
Reputation: 8360
In my case, a fix for "Code insight unavailable" message in Intellij was to add references to my subprojects in settings.gradle.kts
file.
I've tried to set a Gradle project with two subprojects: "app" and "core". I didn't follow the examples correctly and I didn't include references in settings.gradle.kts
.
settings.gradle.kts
rootProject.name = "MyProject"
include("app", "core") // <-- Line added
After reloading the Gradle project in the IDE, everything was fine.
While I might not be answering your question specifically (I'm sorry for that), this is one of very few results for searching "Code insight unavailable" in the search engine, so I hope someone will find this answer useful.
Upvotes: 9