How to serve webApp.js from a backend server ?
# compose-web
a
How to serve webApp.js from a backend server ?
n
try to use a absolute path or use gradle to copy
build/distribution/
into a folder that adds it to the servers resources my buildscript script for it looks like so
Copy code
val generatedSrc = file("src/generated/kotlin").also { it.mkdirs() }
val generatedResources = file("src/generated/resources").also { it.mkdirs() }

sourceSets {
    val main by getting {
        resources.srcDir(generatedResources)
    }
}

kotlin {
    sourceSets {
        main {
            kotlin.srcDir(generatedSrc)
        }
    }
}


tasks {
    val webpackOutput = project(":app").buildDir.resolve("distributions")
    val cleanWebOutput by registering {
        doLast {
            webpackOutput.deleteRecursively()
        }
    }

    project(":app").tasks.getByName("jsBrowserProductionWebpack") {
        mustRunAfter(cleanWebOutput)
    }

    val bundleWeb by registering {
        group = "build"
        dependsOn(cleanWebOutput)
        dependsOn(":app:jsBrowserProductionWebpack")
        val resourceOutput = generatedResources.resolve("web")
        doFirst {
            resourceOutput.deleteRecursively()
            resourceOutput.mkdirs()
        }
        doLast {
            copy {
                excludes += "META-INF"
                from(webpackOutput)
                into(resourceOutput)
                duplicatesStrategy = DuplicatesStrategy.WARN
            }
        }
    }
    
    processResources {
        mustRunAfter(bundleWeb)
    }
}
and then you can host it like so
Copy code
static("/") {
    preCompressed {
        resources("web")
        defaultResource("web/index.html")
        resource("alias", "web/index.html")
    }
}
🙏 1
👍🏻 1