How to add a generated directory to sourceSets, bu...
# gradle
g
How to add a generated directory to sourceSets, but make intellij to unmark as source root? I tried this but doesn’t work, I have to manual unmark the directory
Copy code
kotlin.sourceSets.main {
    kotlin.setSrcDirs(listOf(buildDir.resolve("generated/sources/delombok/java/main")))
}

idea {
    module {
        generatedSourceDirs.add(buildDir.resolve("generated/sources/delombok/java/main"))
        iml {
            whenMerged {
                excludeDirs.add(buildDir.resolve("generated/sources/delombok/java/main"))
            }
        }
    }
}
a
You can wrap
srcDirs
adding into condition like this:
Copy code
if (System.getProperty("idea.sync.active") != "true") {
  kotlin.sourceSets.main {
     kotlin.setSrcDirs(listOf(buildDir.resolve("generated/sources/delombok/java/main")))
  }
}
You can also replace
System.getProperty
with
gradle.providers.systemProperty
(link) to be compatible with Gradle configuration cache
g
Thanks @Alexander.Likhachev it worked!!