Big Chungus
10/22/2020, 5:11 PMSebastian Aigner
10/22/2020, 8:06 PMthana
10/23/2020, 6:40 AM.tar
file containing all the kotlin-dependencies as well as the .js
files created from other modules of our multi-module MPP?Big Chungus
10/23/2020, 7:07 AMthana
10/23/2020, 7:08 AMBig Chungus
10/23/2020, 7:11 AMthana
10/23/2020, 7:13 AMBig Chungus
10/23/2020, 7:15 AMthana
10/23/2020, 7:21 AMnpm link
a single file. but actually it's a good idea we should evaluate againBig Chungus
10/23/2020, 7:25 AMthana
10/23/2020, 7:28 AMBig Chungus
10/23/2020, 7:37 AMthana
10/23/2020, 7:43 AMBig Chungus
10/23/2020, 7:44 AMthana
10/23/2020, 7:44 AMBig Chungus
10/23/2020, 8:10 AMthana
10/26/2020, 1:27 PMjsOne
in the example does - and exactly what i asked for.kjsm
files from the tgz? i tried it with :
files { assemblyDir ->
from("$assemblyDir") {
include("**/*.js")
exclude("**/*.kjsm")
}
}
But this didn't do the trickBig Chungus
11/21/2020, 3:40 PMthana
11/21/2020, 7:05 PMpackage.json
)Big Chungus
11/21/2020, 7:22 PMthana
11/21/2020, 7:27 PMdependencies {
this["vertx3-eventbus-client"] = "^${extra["vertx_version"]}"
}
into the packageJson
block finally it appeard ni the package.json
sharnig the project is not possible unfortunately as it is an internal custimer project 😞Big Chungus
11/21/2020, 7:28 PMthana
11/21/2020, 7:28 PMkotlin {
targets {
jvm {}
js {
useCommonJs()
nodejs {
testTask {
useMocha()
}
}
}
}
sourceSets {
commonMain {
dependencies {
implementation(project(":sharedKernel"))
implementation("com.module:shared-kernel:${extra["shared_kernel_version"]}")
implementation(project(":uuidGeneration"))
implementation(project(":eventsourcing"))
implementation(project(":message-bus"))
implementation(project(":analyse"))
implementation(project(":mppCollection"))
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:${extra["coroutines_version"]}")
implementation("io.github.microutils:kotlin-logging-common:${extra["kotlin_logging_version"]}")
}
}
commonTest {
dependencies {
implementation("org.junit.jupiter:junit-jupiter:${extra["junit_version"]}")
implementation("org.jetbrains.kotlin:kotlin-test-common:${extra["kotlin_version"]}")
implementation("org.jetbrains.kotlin:kotlin-test-annotations-common:${extra["kotlin_version"]}")
implementation("com.willowtreeapps.assertk:assertk:${extra["assertk_version"]}")
implementation("io.mockk:mockk-common:${extra["mockk_version"]}")
}
}
js().compilations["main"].defaultSourceSet {
dependencies {
implementation("io.github.microutils:kotlin-logging-js:${extra["kotlin_logging_version"]}")
implementation(npm("vertx3-eventbus-client", "^${extra["vertx_version"]}"))
}
}
js().compilations["test"].defaultSourceSet {
dependencies {
implementation("org.jetbrains.kotlin:kotlin-test-js:${extra["kotlin_version"]}")
implementation("com.willowtreeapps.assertk:assertk-js:${extra["assertk_version"]}")
}
}
jvm().compilations["main"].defaultSourceSet {
dependencies {
implementation(project(":security"))
implementation(project(":db-migration"))
implementation(project(":event-publisher"))
implementation("org.apache.commons:commons-csv:${extra["apache_commons_csv"]}")
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.springframework.boot:spring-boot-starter-security")
implementation("org.springframework.boot:spring-boot-starter-cache")
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.springframework.boot:spring-boot-starter-actuator")
implementation("org.springframework.boot:spring-boot-starter-mail")
implementation("org.springframework.boot:spring-boot-starter-webflux")
implementation("org.projectreactor:reactor-spring:${extra["reactor_spring_version"]}")
implementation("io.pebbletemplates:pebble:${extra["pebble_version"]}")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-slf4j:${extra["coroutines_version"]}")
implementation("io.github.microutils:kotlin-logging:${extra["kotlin_logging_version"]}")
implementation("com.google.code.gson:gson:${extra["gson_version"]}")
implementation("org.apache.commons:commons-text:${extra["apache_commons_text_version"]}")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin:${extra["jackson_version"]}")
implementation("org.jooq:jooq:${project.extra["jooq_version"]}")
implementation("org.postgresql:postgresql:${extra["postgres_database_version"]}")
implementation("io.vertx:vertx-core:${extra["vertx_version"]}")
implementation("io.vertx:vertx-web:${extra["vertx_version"]}")
implementation("io.vertx:vertx-micrometer-metrics:${extra["vertx_version"]}")
implementation("io.micrometer:micrometer-registry-elastic")
}
}
jvm().compilations["test"].defaultSourceSet {
dependencies {
implementation("io.mockk:mockk:${extra["mockk_version"]}")
implementation("org.jetbrains.kotlin:kotlin-test-junit5:${extra["kotlin_version"]}")
implementation("org.springframework.boot:spring-boot-starter-test") {
exclude(group = "org.junit.vintage")
}
implementation("com.willowtreeapps.assertk:assertk-jvm:${extra["assertk_version"]}")
implementation("org.opentest4j:opentest4j:${extra["opentest4j_version"]}")
implementation("io.mockk:mockk:${extra["mockk_version"]}")
implementation("io.vertx:vertx-unit:${extra["vertx_version"]}")
implementation("au.com.dius:pact-jvm-provider-junit5:${extra["pact_version"]}")
implementation("au.com.dius:pact-jvm-provider-junit5-spring:${extra["pact_version"]}")
implementation("org.awaitility:awaitility:${extra["awaitility_version"]}")
implementation("org.awaitility:awaitility-kotlin:${extra["awaitility_version"]}")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:${extra["coroutines_version"]}")
runtimeOnly("org.testcontainers:junit-jupiter:${extra["testcontainers_version"]}")
runtimeOnly("org.testcontainers:postgresql:${extra["testcontainers_version"]}")
}
}
}
}
npmPublishing {
access = RESTRICTED
version = "1.0.0"
publications {
val js by getting {
moduleName = "modulename"
destinationDir = file("$buildDir${extra["file_separator"]}fbeExport")
files { assemblyDir ->
exclude("**/*.kjsm")
exclude("**/*.meta.js")
exclude("**/*.map")
}
packageJson {
dependencies {
this["vertx3-eventbus-client"] = "^${extra["vertx_version"]}"
}
private = true
license = "UNLICENSED"
author {
name = "company"
url = "<http://company.de/>"
}
bundledDependencies {
-"assertk.*".toRegex()
-"opentest4k.*".toRegex()
}
}
}
}
}
dependencies
block inside packageJson
i tried it with a dependies
block one level up, too, which didn't do the trick either.Big Chungus
11/21/2020, 7:35 PMthana
11/21/2020, 7:36 PMBig Chungus
11/21/2020, 7:39 PMthana
11/21/2020, 7:41 PMval jsMain by getting
vs. js().compilations["main"].defaultSourceSet {
?Big Chungus
11/21/2020, 7:42 PMthana
11/21/2020, 7:43 PMBig Chungus
11/21/2020, 7:44 PMthana
11/21/2020, 7:51 PMdependencies {
npm("vertx3-eventbus-client", "^${extra["vertx_version"]}")
}
above the files
blockBig Chungus
11/22/2020, 3:25 PMthana
11/23/2020, 8:19 AMbundledDependencies
cannot be resolved, others have wriong names, some are missing...
Do you think it would be easier, to simply use the output of jsBrowserDevelopmentWebpack
(if available)?
I currently think this will be the way to go in ouer case: generate bundle, add a matching package.json -> doneBig Chungus
11/23/2020, 9:22 AMpack
taskthana
11/23/2020, 9:34 AMBig Chungus
11/24/2020, 11:58 AMthana
11/24/2020, 12:13 PMBig Chungus
11/24/2020, 12:17 PMnpm install mypackage
? Is npm-shrinkwrap.json
present in the assembled package? Can you share the error?thana
11/24/2020, 12:33 PMnpm link
during developmentBig Chungus
11/24/2020, 12:34 PMpack
gradle taskthana
11/24/2020, 12:34 PMnpm-shrinkwrap.json
is present. please let me look on it with one of our devs first - i have only rudimentary knowledge on npm. i'll inform you then what the real problem was (probably its just my ignorance 😉 )Big Chungus
11/24/2020, 12:35 PMthana
11/24/2020, 12:36 PM