sbt/launch/interface/src/main/java/xsbti/ScalaProvider.java

30 lines
1021 B
Java
Raw Normal View History

package xsbti;
2009-08-21 14:12:43 +02:00
import java.io.File;
2009-10-16 00:09:15 +02:00
/** Provides access to the jars and classes for a particular version of Scala.*/
2009-08-21 14:12:43 +02:00
public interface ScalaProvider
{
2009-09-26 08:18:04 +02:00
public Launcher launcher();
2009-10-16 00:09:15 +02:00
/** The version of Scala this instance provides.*/
2009-09-26 08:18:04 +02:00
public String version();
2009-10-16 00:09:15 +02:00
/** A ClassLoader that loads the classes from scala-library.jar and scala-compiler.jar.*/
2009-09-26 08:18:04 +02:00
public ClassLoader loader();
2009-10-16 00:09:15 +02:00
/** Returns the scala-library.jar and scala-compiler.jar for this version of Scala. */
2009-09-26 08:18:04 +02:00
public File[] jars();
/**@deprecated Only `jars` can be reliably provided for modularized Scala. (Since 0.13.0) */
@Deprecated
public File libraryJar();
/**@deprecated Only `jars` can be reliably provided for modularized Scala. (Since 0.13.0) */
@Deprecated
public File compilerJar();
2009-10-16 00:09:15 +02:00
/** Creates an application provider that will use 'loader()' as the parent ClassLoader for
2009-10-17 15:48:39 +02:00
* the application given by 'id'. This method will retrieve the application if it has not already
* been retrieved.*/
2009-09-26 08:18:04 +02:00
public AppProvider app(ApplicationID id);
}