diff --git a/.gitignore b/.gitignore index 54f9d9a..5429a2d 100644 --- a/.gitignore +++ b/.gitignore @@ -38,4 +38,4 @@ node_modules/ .yarn/install-state.gz .yarn-integrity yarn-debug.log* -yarn-error.log* \ No newline at end of file +yarn-error.log**.zip diff --git a/config.toml b/config.toml index e5677d9..d422a1a 100644 --- a/config.toml +++ b/config.toml @@ -154,3 +154,15 @@ artifactId = "koin-core" version = "2.1.6" category = "injection" default = true + +[dependencies.Jackson] +groupId = "com.fasterxml.jackson.module" +artifactId = "jackson-module-kotlin" +version = "2.11.2" +category = "serialization" + +[dependencies.Kotlinx-serialization] +groupId = "org.jetbrains.kotlinx" +artifactId = "kotlinx-serialization-runtime" +version = "1.0-M1-1.4.0-rc" +category = "serialization" diff --git a/example.zip b/example.zip deleted file mode 100644 index d532998..0000000 Binary files a/example.zip and /dev/null differ diff --git a/src/main/kotlin/starter/Models.kt b/src/main/kotlin/starter/Models.kt index f1d6ec7..70e0dba 100644 --- a/src/main/kotlin/starter/Models.kt +++ b/src/main/kotlin/starter/Models.kt @@ -1,7 +1,7 @@ package starter enum class Category { - Server, Injection, Database, Test, Other + Server, Injection, Database, Serialization, Test, Other } enum class Scope { diff --git a/src/main/kotlin/starter/templates/PomTemplate.kt b/src/main/kotlin/starter/templates/PomTemplate.kt index d0900bd..f4eb6cd 100644 --- a/src/main/kotlin/starter/templates/PomTemplate.kt +++ b/src/main/kotlin/starter/templates/PomTemplate.kt @@ -11,6 +11,7 @@ class PomTemplate(private val engine: PebbleEngine) : Template { override fun render(project: Project): String { val args: MutableMap = mutableMapOf( "dependencies" to project.dependencies.sortedBy { it.scope }, + "kotlinxSerialization" to project.dependencies.any { it.name == "Kotlinx-serialization" }, ) project.inputs.forEach { diff --git a/src/main/resources/starter/pom/plugins/@kotlin.twig b/src/main/resources/starter/pom/plugins/@kotlin.twig index 83e4d82..2751306 100644 --- a/src/main/resources/starter/pom/plugins/@kotlin.twig +++ b/src/main/resources/starter/pom/plugins/@kotlin.twig @@ -20,5 +20,19 @@ ${java.version} + {% if kotlinxSerialization %} + + kotlinx-serialization + + {% endif %} - \ No newline at end of file + {% if kotlinxSerialization %} + + + org.jetbrains.kotlin + kotlin-maven-serialization + ${kotlin.version} + + + {% endif %} +