Mam taki skrypt w gradlu:
import com.moowork.gradle.node.npm.NpxTask
import java.util.Properties
import java.nio.file.Files
import java.nio.file.Paths
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
id("org.springframework.boot") version "2.3.0.RELEASE"
id("io.spring.dependency-management") version "1.0.9.RELEASE"
kotlin("jvm") version "1.3.72"
kotlin("plugin.spring") version "1.3.72"
id("com.github.node-gradle.node") version "2.2.4"
id("org.liquibase.gradle") version "2.0.3"
}
group = "com.github.asciborek"
version = "0.0.1-SNAPSHOT"
java.sourceCompatibility = JavaVersion.VERSION_1_8
repositories {
mavenCentral()
maven {
url = uri("https://dl.bintray.com/kotlin/kotlinx/")
}
}
dependencies {
//Kotlin
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
//Core Libraries and collections
implementation("commons-validator:commons-validator:1.6")
implementation("com.google.guava:guava:29.0-jre")
implementation("io.vavr:vavr:0.10.3")
implementation("io.vavr:vavr-jackson:0.10.2")
//Devops and Cloud
implementation("org.springframework.boot:spring-boot-starter-actuator")
//Web and Security
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
implementation("org.springframework.boot:spring-boot-starter-security")
//Persistence
runtimeOnly("org.postgresql:postgresql")
implementation("org.liquibase:liquibase-core")
implementation("org.springframework.boot:spring-boot-starter-jdbc")
liquibaseRuntime("org.liquibase:liquibase-core")
liquibaseRuntime("org.postgresql:postgresql")
liquibaseRuntime("ch.qos.logback:logback-core")
implementation("ch.qos.logback:logback-classic:1.2.3")
//IO and Concurrency
implementation("org.springframework.boot:spring-boot-starter-mail")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.8")
//Testing
testImplementation("com.github.tomakehurst:wiremock:2.26.3")
testImplementation("org.springframework.boot:spring-boot-starter-test") {
exclude(group = "org.junit.vintage", module = "junit-vintage-engine")
}
testImplementation("org.springframework.security:spring-security-test")
testImplementation("org.testcontainers:testcontainers:1.14.3")
testImplementation("org.testcontainers:postgresql:1.14.3")
testImplementation("org.awaitility:awaitility-kotlin:4.0.3")
}
val properties = Properties()
Files.newInputStream(Paths.get("src/main/resources/application-local.properties")).use {
properties.load(it)
}
liquibase {
activities.register("main"){
this.arguments = mapOf("logLevel" to "info",
"changeLogFile" to "src/main/resources/db/changelog/db.changelog-master.yaml",
"url" to properties["spring.datasource.url"],
"username" to properties["spring.datasource.username"],
"password" to properties["spring.datasource.password"]
)
}
runList = "main"
}
tasks.withType<Test> {
useJUnitPlatform()
}
tasks.withType<KotlinCompile> {
kotlinOptions {
freeCompilerArgs = listOf("-Xjsr305=strict")
jvmTarget = "1.8"
}
}
node {
download = true
version = "12.16.3"
npmVersion = ""
distBaseUrl = "https://nodejs.org/dist"
npmInstallCommand = "install"
workDir = file("${project.projectDir}/.gradle/nodejs")
npmWorkDir = file("${project.projectDir}/.gradle/npm")
nodeModulesDir = file("${project.projectDir}/frontend")
}
tasks.register<NpxTask>("npmBuild") {
dependsOn("npmInstall")
command = "npm"
setArgs(listOf("run", "build"))
doLast {
copy {
from("${project.projectDir}/frontend/dist")
into("${project.projectDir}/src/main/resources/public")
}
}
}
val compileKotlin: KotlinCompile by tasks
compileKotlin.kotlinOptions {
freeCompilerArgs = listOf("-Xinline-classes")
}
Jak odpalam:
./gradlew update to dostaje:
Execution failed for task ':update'.
> Process 'command '/home/scibi/.sdkman/candidates/java/8.0.265-open/bin/java'' finished with non-zero exit value 255
Nie wiem co jest nie tak :(
Plis help :D
@jarekr000000 @Shalom @danek @Charles_Ray