diff --git a/sbt-coursier/src/main/scala/coursier/CoursierPlugin.scala b/sbt-coursier/src/main/scala/coursier/CoursierPlugin.scala index 06336e8ec..c47d902dc 100644 --- a/sbt-coursier/src/main/scala/coursier/CoursierPlugin.scala +++ b/sbt-coursier/src/main/scala/coursier/CoursierPlugin.scala @@ -175,7 +175,10 @@ object CoursierPlugin extends AutoPlugin { ) confs ++ extraSources.toSeq ++ extraDocs.toSeq - } + }, + // Tests artifacts from Maven repositories are given this type. + // Adding it here so that these work straightaway. + classpathTypes += "test-jar" ) override lazy val buildSettings = super.buildSettings ++ Seq( diff --git a/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/build.sbt b/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/build.sbt new file mode 100644 index 000000000..21f304a4b --- /dev/null +++ b/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/build.sbt @@ -0,0 +1,2 @@ +scalaVersion := "2.11.8" +libraryDependencies += "org.jclouds.api" % "nova" % "1.5.9" classifier "tests" diff --git a/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/project/plugins.sbt b/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/project/plugins.sbt new file mode 100644 index 000000000..152225a9e --- /dev/null +++ b/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/project/plugins.sbt @@ -0,0 +1,11 @@ +{ + val pluginVersion = sys.props.getOrElse( + "plugin.version", + throw new RuntimeException( + """|The system property 'plugin.version' is not defined. + |Specify this property using the scriptedLaunchOpts -D.""".stripMargin + ) + ) + + addSbtPlugin("io.get-coursier" % "sbt-coursier" % pluginVersion) +} diff --git a/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/src/main/scala/Main.scala b/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/src/main/scala/Main.scala new file mode 100644 index 000000000..7fedd9551 --- /dev/null +++ b/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/src/main/scala/Main.scala @@ -0,0 +1,17 @@ +import java.io.File +import java.nio.file.Files + +import scala.util.Try + +object Main extends App { + + def classFound(clsName: String) = Try( + Thread.currentThread() + .getContextClassLoader() + .loadClass(clsName) + ).toOption.nonEmpty + + val classifierTest = classFound("org.jclouds.openstack.nova.functions.ParseServerFromJsonResponseTest") + + assert(classifierTest, s"Couldn't find classifierTest") +} diff --git a/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/test b/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/test new file mode 100644 index 000000000..62ea636c1 --- /dev/null +++ b/sbt-coursier/src/sbt-test/sbt-coursier/classifiers/test @@ -0,0 +1 @@ +> run