From bccffaab6de32bdfed9f327f73ae3b4bd34bc17b Mon Sep 17 00:00:00 2001 From: Alexandre Archambault Date: Sat, 20 Feb 2016 15:53:11 +0100 Subject: [PATCH] Add --classifier option --- cli/src/main/scala-2.11/coursier/cli/Coursier.scala | 5 +++++ cli/src/main/scala-2.11/coursier/cli/Helper.scala | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/cli/src/main/scala-2.11/coursier/cli/Coursier.scala b/cli/src/main/scala-2.11/coursier/cli/Coursier.scala index 2d6747ffd..687069a06 100644 --- a/cli/src/main/scala-2.11/coursier/cli/Coursier.scala +++ b/cli/src/main/scala-2.11/coursier/cli/Coursier.scala @@ -50,6 +50,10 @@ case class CommonOptions( exclude: List[String], @Help("Consider provided dependencies to be intransitive. Applies to all the provided dependencies.") intransitive: Boolean, + @Help("Classifiers that should be fetched") + @Value("classifier1,classifier2,...") + @Short("C") + classifier: List[String], @Help("Maximum number of parallel downloads (default: 6)") @Short("n") parallel: Int = 6, @@ -60,6 +64,7 @@ case class CommonOptions( cacheOptions: CacheOptions ) { val verbose0 = verbose.length - (if (quiet) 1 else 0) + lazy val classifier0 = classifier.flatMap(_.split(',')).filter(_.nonEmpty) } case class CacheOptions( diff --git a/cli/src/main/scala-2.11/coursier/cli/Helper.scala b/cli/src/main/scala-2.11/coursier/cli/Helper.scala index a5cca7ad6..132cba5a4 100644 --- a/cli/src/main/scala-2.11/coursier/cli/Helper.scala +++ b/cli/src/main/scala-2.11/coursier/cli/Helper.scala @@ -288,14 +288,14 @@ class Helper( val res0 = Option(subset).fold(res)(res.subset) val artifacts = - if (sources || javadoc) { - var classifiers = Seq.empty[String] + if (classifier0.nonEmpty || sources || javadoc) { + var classifiers = classifier0 if (sources) classifiers = classifiers :+ "sources" if (javadoc) classifiers = classifiers :+ "javadoc" - res0.classifiersArtifacts(classifiers) + res0.classifiersArtifacts(classifiers.distinct) } else res0.artifacts