Michael Paus
04/28/2021, 6:45 PMjw
04/28/2021, 7:05 PMjw
04/28/2021, 7:19 PMalexey.tsvetkov
04/28/2021, 8:45 PMorg.jetbrains.compose.compiler:compiler
artifact in compiler plugin classpath;
• Compose JVM dependencies for compilation and at runtime. E.g.org.jetbrains.compose.desktop:desktop-jvm-macos-x64
and its transitive dependencies. Dependencies of interest can be found in the source of our Gradle plugin https://github.com/JetBrains/compose-jb/blob/master/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/ComposePlugin.kt#L111
• -XuseIR
compiler argument (because Compose compiler plugin supports only new backend IR);
• A declaration of JetBrains Compose Maven repository (https://maven.pkg.jetbrains.space/public/p/compose/dev).
That’s pretty much it for a simple desktop app. Then it can be ran as any other Java app. It can be packaged into native installers as well using jpackage
, there are probably existing Maven plugins for that.
Under the hood it’s just Maven artifacts, the compiler plugin and a few compiler arguments (and a few other tools for bundling distributions).Michael Paus
04/29/2021, 7:04 AMMichael Paus
05/02/2021, 10:58 AMandroidx.compose.ui.graphics
into that library, i.e., no @Composable
functions. Just some plain graphics stuff. Can such code be compiled as plain Kotlin code without the compiler plugin or is it always needed for all Compose code?Michael Paus
05/02/2021, 12:20 PM