mirror of
https://github.com/ethauvin/kobalt.git
synced 2025-04-25 07:57:12 -07:00
Add runtime scope.
This commit is contained in:
parent
a508f32295
commit
7690be501c
2 changed files with 18 additions and 8 deletions
|
@ -64,17 +64,18 @@ open public class Project(
|
|||
|
||||
@Directive
|
||||
public fun dependencies(init: Dependencies.() -> Unit) : Dependencies {
|
||||
dependencies = Dependencies(this, compileDependencies, compileProvidedDependencies)
|
||||
dependencies = Dependencies(this, compileDependencies, compileProvidedDependencies, compileRuntimeDependencies)
|
||||
dependencies!!.init()
|
||||
return dependencies!!
|
||||
}
|
||||
|
||||
val compileDependencies : ArrayList<IClasspathDependency> = arrayListOf()
|
||||
val compileProvidedDependencies : ArrayList<IClasspathDependency> = arrayListOf()
|
||||
val compileRuntimeDependencies : ArrayList<IClasspathDependency> = arrayListOf()
|
||||
|
||||
@Directive
|
||||
public fun dependenciesTest(init: Dependencies.() -> Unit) : Dependencies {
|
||||
dependencies = Dependencies(this, testDependencies, testProvidedDependencies)
|
||||
dependencies = Dependencies(this, testDependencies, testProvidedDependencies, compileRuntimeDependencies)
|
||||
dependencies!!.init()
|
||||
return dependencies!!
|
||||
}
|
||||
|
@ -91,7 +92,8 @@ public class Sources(val project: Project, val sources: ArrayList<String>) {
|
|||
}
|
||||
|
||||
public class Dependencies(val project: Project, val dependencies: ArrayList<IClasspathDependency>,
|
||||
val providedDependencies: ArrayList<IClasspathDependency>) {
|
||||
val providedDependencies: ArrayList<IClasspathDependency>,
|
||||
val runtimeDependencies: ArrayList<IClasspathDependency>) {
|
||||
@Directive
|
||||
fun compile(vararg dep: String) {
|
||||
dep.forEach { dependencies.add(MavenDependency.create(it)) }
|
||||
|
@ -101,5 +103,10 @@ public class Dependencies(val project: Project, val dependencies: ArrayList<ICla
|
|||
fun provided(vararg dep: String) {
|
||||
dep.forEach { providedDependencies.add(MavenDependency.create(it))}
|
||||
}
|
||||
|
||||
@Directive
|
||||
fun runtime(vararg dep: String) {
|
||||
dep.forEach { runtimeDependencies.add(MavenDependency.create(it))}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -143,14 +143,17 @@ public class PackagingPlugin @Inject constructor(val dependencyManager : Depende
|
|||
}
|
||||
|
||||
//
|
||||
// If fatJar is true, add all the transitive dependencies too
|
||||
// If fatJar is true, add all the transitive dependencies as well (both compile and runtime)
|
||||
//
|
||||
if (jar.fatJar) {
|
||||
log(2, "Creating fat jar")
|
||||
val allDependencies = dependencyManager.transitiveClosure(project.compileDependencies)
|
||||
allDependencies.map { it.jarFile.get() }.forEach {
|
||||
if (! isExcluded(it, jar.excludes)) {
|
||||
allFiles.add(IncludedFile(arrayListOf(FileSpec(it.path))))
|
||||
|
||||
listOf(dependencyManager.transitiveClosure(project.compileDependencies),
|
||||
dependencyManager.transitiveClosure(project.compileRuntimeDependencies)).forEach { dep ->
|
||||
dep.map { it.jarFile.get() }.forEach {
|
||||
if (!isExcluded(it, jar.excludes)) {
|
||||
allFiles.add(IncludedFile(arrayListOf(FileSpec(it.path))))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue