Open4
ComposeMultiplatformのセットアップ
ComposeMultiplatformのWizardからプロジェクトのひな形をダウンロードした後、いくつか修正する必要があったのでメモ。AndroidとDesktop、Server(Ktor)を対象としました。
AndroidSDKのパス
プロジェクトのディレクトリ直下にあるlocal.propertiesのsdk.dirにAndroidSDKのパスを通す必要がありました。
local.properties
sdk.dir="AndroidSDKのパス"
Composeの@Previewができない!
composeAppのbuild.gradle.ktsに以下を追記
build.gradle.kts(composeApp)
android {
...
buildFeatures {
compose = true
}
composeOptions {
kotlinCompilerExtensionVersion = "1.5.8"
}
...
}
これでPreviewが使えるようになりました。
KtorのAutoReload
マルチプロジェクトでも設定方法は変わりません。serverモジュールのApplication.ktのmain関数を以下のように修正
Application.kt
fun main() {
embeddedServer(Netty, port = SERVER_PORT, host = "0.0.0.0", watchPaths = listOf("classes", "resources")) {
module()
}.start(wait = true)
}
後はcompileKotlinタスクを-tオプションを付けて実行すれば変更に応じて自動でコンパイルされ、ビルドの成果物をKtorが参照するようになります。