Shabinder Singh
03/18/2021, 1:22 AM./gradlew :desktop:packageDeb
./gradlew :desktop:runDistributable
./gradlew :desktop:createDistributable
Running Locally using ./gradlew :desktop:run
works fine!gildor
03/18/2021, 1:36 AMShabinder Singh
03/18/2021, 9:08 AMgildor
03/18/2021, 9:09 AMShabinder Singh
03/18/2021, 9:10 AMjmods directory
...........
Will try on 14 and report backgildor
03/18/2021, 9:11 AMrun is used to run an app locally. You need to define a mainClass — an fq-name of a class, containing the main function. Note, that run starts a non-packaged JVM application with full runtime. This is faster and easier to debug, than creating a compact binary image with minified runtime. To run a final binary image, use runDistributable instead.
Shabinder Singh
03/18/2021, 9:15 AMDirk Hoffmann
03/18/2021, 9:29 AMShabinder Singh
03/18/2021, 11:29 AMDirk Hoffmann
03/18/2021, 11:30 AMcompose.desktop {
application {
mainClass = theMainClass
nativeDistributions {
targetFormats(
org.jetbrains.compose.desktop.application.dsl.TargetFormat.Dmg,
org.jetbrains.compose.desktop.application.dsl.TargetFormat.Msi,
org.jetbrains.compose.desktop.application.dsl.TargetFormat.Deb)
packageName = "AccordDeskFrontend"
version = "${rootProject.version}" // "${rootProject.version}" // must not start with '0'
description = "NdaDesk by AccordDesk"
copyright = "© 2021 AccordDesk. All rights reserved."
vendor = "Dirk Hoffmann"
macOS {
bundleID = "com.accorddesk.AccordDeskFrontend"
}
}
}
}
Shabinder Singh
03/18/2021, 12:15 PMimport org.jetbrains.compose.compose
import org.jetbrains.compose.desktop.application.dsl.TargetFormat
plugins {
kotlin("multiplatform")
id("org.jetbrains.compose")
}
group = "com.shabinder"
version = Versions.versionName
kotlin {
jvm {
compilations.all {
kotlinOptions.jvmTarget = "14"
}
}
sourceSets {
val jvmMain by getting {
dependencies {
implementation(compose.desktop.currentOs)
implementation(project(":common:database"))
implementation(project(":common:dependency-injection"))
implementation(project(":common:compose"))
implementation(project(":common:root"))
implementation(Decompose.decompose)
implementation(Decompose.extensionsCompose)
implementation(MVIKotlin.mvikotlin)
implementation(MVIKotlin.mvikotlinMain)
}
}
val jvmTest by getting
}
}
compose.desktop {
application {
mainClass = "MainKt"
description = "Music Downloader for Spotify, Gaana, Youtube Music."
nativeDistributions {
targetFormats(TargetFormat.Dmg, TargetFormat.Msi, TargetFormat.Deb)
packageName = "SpotiFlyer"
}
}
}
Dirk Hoffmann
03/18/2021, 12:45 PMpackageVersion = "1.0.0"
(needs it on Mac, not sure about msi and deb)
on mac also a
macOS {
bundleID = "my.group"
}