From b741d393edf811159278cfb9cef4d1aff5b53e4e Mon Sep 17 00:00:00 2001 From: Vyacheslav Gerasimov Date: Tue, 9 Apr 2019 22:07:58 +0300 Subject: [PATCH] Build: make fatJar in JPS recursively using embedded configuration --- gradle/jps.gradle.kts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gradle/jps.gradle.kts b/gradle/jps.gradle.kts index 2586ab83a1b..4611fccfe16 100644 --- a/gradle/jps.gradle.kts +++ b/gradle/jps.gradle.kts @@ -152,7 +152,7 @@ if (kotlinBuildProperties.isInJpsBuildIdeaSync) { } project(":prepare:idea-plugin").afterEvaluate { - val embedded by configurations + val ideaPluginProject = this val libraries by configurations val jpsPlugin by configurations @@ -166,7 +166,7 @@ if (kotlinBuildProperties.isInJpsBuildIdeaSync) { file("$buildDir/tmp/jar/MANIFEST.MF") } - jarFromConfiguration(embedded) + jarFromEmbedded(ideaPluginProject) } } @@ -206,8 +206,10 @@ val jarArtifactProjects = listOf( fun moduleName(projectPath: String) = rootProject.name + projectPath.replace(':', '.') + ".main" -fun RecursiveArtifact.jarFromConfiguration(configuration: Configuration) { - val resolvedArtifacts = configuration +fun RecursiveArtifact.jarFromEmbedded(project: Project) { + val embedded = project.configurations.findByName("embedded") ?: return + + val resolvedArtifacts = embedded .resolvedConfiguration .resolvedArtifacts @@ -220,6 +222,7 @@ fun RecursiveArtifact.jarFromConfiguration(configuration: Configuration) { .filterIsInstance() .forEach { moduleOutput(moduleName(it.projectPath)) + jarFromEmbedded(project(it.projectPath)) } }