aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Christopher Vogt <oss.nsp@cvogt.org>2017-02-13 09:15:39 -0500
committerGitHub <noreply@github.com>2017-02-13 09:15:39 -0500
commit0a295c21d3379117e661fdbf586ecb6222c3602b (patch)
treeab56ced74d28cd6ae954d24af70c1a05445c8eee
parentae435591ce164a8bb4c836fec446adebc7f14a4a (diff)
parentdd3ebe49c9d7dfc1c0a087c8e2a2679e466b5908 (diff)
downloadcbt-0a295c21d3379117e661fdbf586ecb6222c3602b.tar.gz
cbt-0a295c21d3379117e661fdbf586ecb6222c3602b.tar.bz2
cbt-0a295c21d3379117e661fdbf586ecb6222c3602b.zip
Merge pull request #340 from cvogt/fix-jar-packaging
make sure jar, tests and main classes use the right directories
-rw-r--r--plugins/scalatest/ScalaTest.scala2
-rw-r--r--stage2/BasicBuild.scala9
-rw-r--r--stage2/Lib.scala4
-rw-r--r--stage2/PackageJars.scala2
4 files changed, 9 insertions, 8 deletions
diff --git a/plugins/scalatest/ScalaTest.scala b/plugins/scalatest/ScalaTest.scala
index 5ccabc6..56405aa 100644
--- a/plugins/scalatest/ScalaTest.scala
+++ b/plugins/scalatest/ScalaTest.scala
@@ -6,7 +6,7 @@ trait ScalaTest extends BaseBuild{
override def run: ExitCode = {
import ScalaTestLib._
val _classLoader = classLoader(context.classLoaderCache)
- val suiteNames = compileFile.map( d => discoverSuites(d, _classLoader) ).toVector.flatten
+ val suiteNames = exportedClasspath.files.map( d => discoverSuites(d, _classLoader) ).flatten
runSuites( suiteNames.map( loadSuite( _, _classLoader ) ) )
ExitCode.Success
}
diff --git a/stage2/BasicBuild.scala b/stage2/BasicBuild.scala
index 9db4632..ed03de2 100644
--- a/stage2/BasicBuild.scala
+++ b/stage2/BasicBuild.scala
@@ -129,7 +129,10 @@ trait BaseBuild extends BuildInterface with DependencyImplementation with Trigge
val resourcesDirectory = projectDirectory ++ "/resources"
ClassPath( if(resourcesDirectory.exists) Seq(resourcesDirectory) else Nil )
}
- def exportedClasspath : ClassPath = ClassPath(compileFile.toSeq) ++ resourceClasspath
+ def exportedClasspath : ClassPath = {
+ compile
+ ClassPath(Seq(compileTarget).filter(_.exists)) ++ resourceClasspath
+ }
def targetClasspath = ClassPath(Seq(compileTarget))
// ========== compile, run, test ==========
@@ -142,8 +145,6 @@ trait BaseBuild extends BuildInterface with DependencyImplementation with Trigge
final def lastModified: Long = compile.getOrElse(0L)
- final def compileFile: Option[File] = compile.map(_ => compileTarget)
-
def compile: Option[Long] = taskCache[BaseBuild]("_compile").memoize{
lib.compile(
context.cbtLastModified,
@@ -153,7 +154,7 @@ trait BaseBuild extends BuildInterface with DependencyImplementation with Trigge
)
}
- def mainClasses: Seq[Class[_]] = compileFile.toSeq.flatMap( lib.mainClasses( _, classLoader(classLoaderCache) ) )
+ def mainClasses: Seq[Class[_]] = exportedClasspath.files.flatMap( lib.mainClasses( _, classLoader(classLoaderCache) ) )
def runClass: Option[String] = lib.runClass( mainClasses ).map( _.getName )
diff --git a/stage2/Lib.scala b/stage2/Lib.scala
index 45803b4..47e1635 100644
--- a/stage2/Lib.scala
+++ b/stage2/Lib.scala
@@ -66,10 +66,10 @@ final class Lib(val logger: Logger) extends Stage1Lib(logger) with Scaffold{
)
}
- def jar(artifactId: String, scalaMajorVersion: String, version: String, compileTarget: File, jarTarget: File): Option[File] = {
+ def jar(artifactId: String, scalaMajorVersion: String, version: String, files: Seq[File], jarTarget: File): Option[File] = {
lib.jarFile(
jarTarget ++ ("/"++artifactId++"_"++scalaMajorVersion++"-"++version++".jar"),
- Seq(compileTarget)
+ files
)
}
diff --git a/stage2/PackageJars.scala b/stage2/PackageJars.scala
index 7079786..fddbfc6 100644
--- a/stage2/PackageJars.scala
+++ b/stage2/PackageJars.scala
@@ -11,7 +11,7 @@ trait PackageJars extends BaseBuild with ArtifactInfo{
)( _() ).flatten
def jar: Option[File] = taskCache[PackageJars]("jar").memoize{
- compileFile.flatMap( lib.jar( artifactId, scalaMajorVersion, version, _, jarTarget ) )
+ lib.jar( artifactId, scalaMajorVersion, version, exportedClasspath.files, jarTarget )
}
def srcJar: Option[File] = taskCache[PackageJars]("srcJar").memoize{