Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Build gradle script with modules on kotlin

Tags:

gradle

kotlin

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 that attaches in the first one.

For groovy I apply script so:

apply from: "${rootProject.projectDir}/publish-maven.gradle"

For kotlin I found the same code will be look like:

apply(from = "publish-maven.gradle.kts")

But publish-maven.gradle.kts don't attaches to build.gradle.kts. At the top of the script in IDE constantly hangs warning:

Code insight unavailable (configuration for this script wasn't received during the last Gradle project import)

and kotlin syntax don't recognized.

I try also

apply(from = "${rootProject.projectDir}/publish-maven.gradle.kts")

or have found other examples but non of them helped.

What have I 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

like image 582
well Avatar asked Oct 26 '20 19:10

well


People also ask

Does Gradle work with Kotlin?

Gradle is a build system that is very commonly used in the Java, Android, and other ecosystems. It is the default choice for Kotlin/Native and Multiplatform when it comes to build systems.


1 Answers

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.

like image 139
cubuspl42 Avatar answered Sep 18 '22 14:09

cubuspl42