Groovy Documentation

org.gradle.api.tasks
[Groovy] Class ScalaRuntime

java.lang.Object
  org.gradle.api.tasks.ScalaRuntime

@Incubating
class ScalaRuntime

Provides information related to the Scala runtime(s) used in a project. Added by the ScalaBasePlugin as a project extension named scalaRuntime.

Example usage:

     apply plugin: "scala"

     repositories {
         mavenCentral()
     }

     dependencies {
         compile "org.scala-lang:scala-library:2.10.1"
     }

     def scalaClasspath = scalaRuntime.inferScalaClasspath(configurations.compile)
     // The returned class path can be used to configure the 'scalaClasspath' property of tasks
     // such as 'ScalaCompile' or 'ScalaDoc', or to execute these and other Scala tools directly.
 


Field Summary
protected Project project

 
Constructor Summary
ScalaRuntime(Project project)

 
Method Summary
File findScalaJar(Iterable classpath, String appendix)

Searches the specified class path for a Scala Jar file (scala-compiler, scala-library, scala-jdbc, etc.) with the specified appendix (compiler, library, jdbc, etc.).

String getScalaVersion(File scalaJar)

Determines the version of a Scala Jar file (scala-compiler, scala-library, scala-jdbc, etc.).

FileCollection inferScalaClasspath(Iterable classpath)

Searches the specified class path for a 'scala-library' Jar, and returns a class path containing a corresponding (same version) 'scala-compiler' Jar and its dependencies.

 
Methods inherited from class Object
wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll
 

Field Detail

project

protected final Project project


 
Constructor Detail

ScalaRuntime

ScalaRuntime(Project project)


 
Method Detail

findScalaJar

@Nullable
File findScalaJar(Iterable classpath, String appendix)
Searches the specified class path for a Scala Jar file (scala-compiler, scala-library, scala-jdbc, etc.) with the specified appendix (compiler, library, jdbc, etc.). If no such file is found, null is returned.
Parameters:
classpath - the class path to search
appendix - the appendix to search for
Returns:
a Scala Jar file with the specified appendix


getScalaVersion

@Nullable
String getScalaVersion(File scalaJar)
Determines the version of a Scala Jar file (scala-compiler, scala-library, scala-jdbc, etc.). If the version cannot be determined, or the file is not a Scala Jar file, null is returned.

Implementation note: The version is determined by parsing the file name, which is expected to match the pattern 'scala-[component]-[version].jar'.

Parameters:
scalaJar - a Scala Jar file
Returns:
the version of the Scala Jar file


inferScalaClasspath

FileCollection inferScalaClasspath(Iterable classpath)
Searches the specified class path for a 'scala-library' Jar, and returns a class path containing a corresponding (same version) 'scala-compiler' Jar and its dependencies.

If the (deprecated) 'scalaTools' configuration is explicitly configured, no repository is declared for the project, no 'scala-library' Jar is found on the specified class path, or its version cannot be determined, a class path with the contents of the 'scalaTools' configuration is returned.

The returned class path may be empty, or may fail to resolve when asked for its contents.

Parameters:
classpath - a class path containing a 'scala-library' Jar
Returns:
a class path containing a corresponding 'scala-compiler' Jar and its dependencies


 

Gradle API 1.8