From c8a8a462aa2113f123bb0bcc1ef8a825495af739 Mon Sep 17 00:00:00 2001 From: Alexey Tsvetkov <654232+AlexeyTsvetkov@users.noreply.github.com> Date: Sat, 20 Feb 2021 08:54:35 +0300 Subject: [PATCH] Include java.logging module by default (#402) It is probably frequently needed and relatively small (the inclusion increases final app size by ~200 kb), so it can be included by default Fixes #401 --- .../application/dsl/NativeDistributions.kt | 2 +- .../compose/DesktopApplicationTest.kt | 8 +++++++ .../jetbrains/compose/test/TestProjects.kt | 1 + .../application/javaLogger/build.gradle | 24 +++++++++++++++++++ .../application/javaLogger/settings.gradle | 11 +++++++++ .../javaLogger/src/main/kotlin/main.kt | 3 +++ 6 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 gradle-plugins/compose/src/test/test-projects/application/javaLogger/build.gradle create mode 100644 gradle-plugins/compose/src/test/test-projects/application/javaLogger/settings.gradle create mode 100644 gradle-plugins/compose/src/test/test-projects/application/javaLogger/src/main/kotlin/main.kt diff --git a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/dsl/NativeDistributions.kt b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/dsl/NativeDistributions.kt index b3bf8d07bc..022b6ce488 100644 --- a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/dsl/NativeDistributions.kt +++ b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/dsl/NativeDistributions.kt @@ -21,7 +21,7 @@ open class NativeDistributions @Inject constructor( set(layout.buildDirectory.dir("compose/binaries")) } - var modules = arrayListOf("java.desktop") + var modules = arrayListOf("java.desktop", "java.logging") fun modules(vararg modules: String) { this.modules.addAll(modules.toList()) } diff --git a/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/DesktopApplicationTest.kt b/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/DesktopApplicationTest.kt index 438cb001b4..f7b937fb6e 100644 --- a/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/DesktopApplicationTest.kt +++ b/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/DesktopApplicationTest.kt @@ -113,4 +113,12 @@ class DesktopApplicationTest : GradlePluginTestBase() { check.logContains("Called lib2#util()") } } + + @Test + fun testJavaLogger() = with(testProject(TestProjects.javaLogger)) { + gradle(":runDistributable").build().checks { check -> + check.taskOutcome(":runDistributable", TaskOutcome.SUCCESS) + check.logContains("Compose Gradle plugin test log warning!") + } + } } diff --git a/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/TestProjects.kt b/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/TestProjects.kt index 938cb46f93..d125f1dee6 100644 --- a/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/TestProjects.kt +++ b/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/TestProjects.kt @@ -5,4 +5,5 @@ object TestProjects { const val mpp = "application/mpp" const val jvmKotlinDsl = "application/jvmKotlinDsl" const val moduleClashCli = "application/moduleClashCli" + const val javaLogger = "application/javaLogger" } \ No newline at end of file diff --git a/gradle-plugins/compose/src/test/test-projects/application/javaLogger/build.gradle b/gradle-plugins/compose/src/test/test-projects/application/javaLogger/build.gradle new file mode 100644 index 0000000000..89d381009a --- /dev/null +++ b/gradle-plugins/compose/src/test/test-projects/application/javaLogger/build.gradle @@ -0,0 +1,24 @@ +plugins { + id "org.jetbrains.kotlin.jvm" + id "org.jetbrains.compose" +} + +repositories { + google() + mavenCentral() + jcenter() + maven { + url "https://maven.pkg.jetbrains.space/public/p/compose/dev" + } +} + +dependencies { + implementation "org.jetbrains.kotlin:kotlin-stdlib" + implementation compose.desktop.currentOs +} + +compose.desktop { + application { + mainClass = "MainKt" + } +} diff --git a/gradle-plugins/compose/src/test/test-projects/application/javaLogger/settings.gradle b/gradle-plugins/compose/src/test/test-projects/application/javaLogger/settings.gradle new file mode 100644 index 0000000000..ca60210443 --- /dev/null +++ b/gradle-plugins/compose/src/test/test-projects/application/javaLogger/settings.gradle @@ -0,0 +1,11 @@ +pluginManagement { + plugins { + id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION_PLACEHOLDER' + id 'org.jetbrains.compose' version 'COMPOSE_VERSION_PLACEHOLDER' + } + repositories { + mavenLocal() + gradlePluginPortal() + } +} +rootProject.name = "javaLogger" \ No newline at end of file diff --git a/gradle-plugins/compose/src/test/test-projects/application/javaLogger/src/main/kotlin/main.kt b/gradle-plugins/compose/src/test/test-projects/application/javaLogger/src/main/kotlin/main.kt new file mode 100644 index 0000000000..8de79c4745 --- /dev/null +++ b/gradle-plugins/compose/src/test/test-projects/application/javaLogger/src/main/kotlin/main.kt @@ -0,0 +1,3 @@ +fun main() { + java.util.logging.Logger.getAnonymousLogger().warning("Compose Gradle plugin test log warning!") +} \ No newline at end of file