1
0
Fork 0
mirror of https://github.com/ethauvin/kobalt.git synced 2025-04-25 07:57:12 -07:00

Fixes #451 -- add stdlib and runtime deps to the Kotlin project template

This commit is contained in:
Tim Keating 2017-07-18 00:26:01 -05:00
parent 76bd010168
commit 9e6b3d26db
3 changed files with 14 additions and 5 deletions

View file

@ -20,6 +20,8 @@ abstract class LanguageTemplateGenerator : ITemplate {
abstract val defaultSourceDirectories : HashSet<String>
abstract val defaultTestDirectories : HashSet<String>
abstract val mainDependencies : ArrayList<Pom.Dependency>
abstract val testDependencies : ArrayList<Pom.Dependency>
abstract val directive : String
abstract val fileMatch : (String) -> Boolean
abstract val fileMap: List<FileInfo>
@ -131,20 +133,19 @@ abstract class LanguageTemplateGenerator : ITemplate {
put("directory", currentDir.absolutePath)
put("sourceDirectories", defaultSourceDirectories)
put("sourceDirectoriesTest", defaultTestDirectories)
put("mainDependencies", mainDependencies)
put("testDependencies", testDependencies)
put("imports", "import com.beust.kobalt.plugin.$templateName.*")
put("directive", "project")
}
var mainDeps = arrayListOf<Pom.Dependency>()
var testDeps = arrayListOf<Pom.Dependency>()
map.put("mainDependencies", mainDeps)
map.put("testDependencies", testDeps)
File("pom.xml").let {
if (it.absoluteFile.exists()) {
importPom(it, mainDeps, testDeps, map)
importPom(it, mainDependencies, testDependencies, map)
}
}
val fileInputStream = javaClass.classLoader
.getResource(ITemplateContributor.DIRECTORY_NAME + "/build.mustache").openStream()
val sw = StringWriter()

View file

@ -1,11 +1,14 @@
package com.beust.kobalt.app.java
import com.beust.kobalt.app.LanguageTemplateGenerator
import com.beust.kobalt.maven.Pom
/**
* Template for the "java" generator.
*/
class JavaTemplateGenerator : LanguageTemplateGenerator() {
override val mainDependencies = arrayListOf<Pom.Dependency>()
override val testDependencies = arrayListOf<Pom.Dependency>()
override val defaultSourceDirectories = hashSetOf("src/main/java")
override val defaultTestDirectories = hashSetOf("src/test/java")
override val directive = "project"

View file

@ -1,10 +1,15 @@
package com.beust.kobalt.app.kotlin
import com.beust.kobalt.app.LanguageTemplateGenerator
import com.beust.kobalt.maven.Pom
class KotlinTemplateGenerator : LanguageTemplateGenerator() {
override val defaultSourceDirectories = hashSetOf("src/main/kotlin")
override val defaultTestDirectories = hashSetOf("src/test/kotlin")
override val mainDependencies = arrayListOf(
Pom.Dependency("org.jetbrains.kotlin","kotlin-runtime", null, "1.1.3"),
Pom.Dependency("org.jetbrains.kotlin", "kotlin-stdlib", null, "1.1.3"))
override val testDependencies = arrayListOf<Pom.Dependency>()
override val directive = "project"
override val templateName = "kotlin"
override val templateDescription = "Generate a simple Kotlin project"