Package xsbti

Interface AppProvider


public interface AppProvider
This represents an interface that can generate applications or servers. This provider grants access to launcher related features associated with the id.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns a mechanism you can use to install/find/resolve components.
    Loads the class for the entry point for the application given by 'id'.
    id()
    The ID of the application that will be created by 'newMain' or 'mainClass'.
    The classloader used to load this application.
    Class<? extends AppMain>
    Deprecated.
    ("use entryPoint instead") Note: This will throw an exception if the launched application does not extend AppMain.
    The classpath from which the main class is loaded, excluding Scala jars.
    Creates a new instance of the entry point of the application given by 'id'.
    Returns the ScalaProvider that this AppProvider will use.
  • Method Details

    • scalaProvider

      ScalaProvider scalaProvider()
      Returns the ScalaProvider that this AppProvider will use.
    • id

      The ID of the application that will be created by 'newMain' or 'mainClass'.
    • loader

      ClassLoader loader()
      The classloader used to load this application.
    • mainClass

      @Deprecated Class<? extends AppMain> mainClass()
      Deprecated.
      ("use entryPoint instead") Note: This will throw an exception if the launched application does not extend AppMain.
      Loads the class for the entry point for the application given by 'id'. This method will return the same class every invocation. That is, the ClassLoader is not recreated each call.
    • entryPoint

      Class<?> entryPoint()
      Loads the class for the entry point for the application given by 'id'. This method will return the same class every invocation. That is, the ClassLoader is not recreated each call.
    • newMain

      AppMain newMain()
      Creates a new instance of the entry point of the application given by 'id'. It is NOT guaranteed that newMain().getClass() == mainClass(). The sbt launcher can wrap generic static main methods. In this case, there will be a wrapper class, and you must use the `entryPoint` method.
      Throws:
      IncompatibleClassChangeError - if the configuration used for this Application does not represent a launched application.
    • mainClasspath

      File[] mainClasspath()
      The classpath from which the main class is loaded, excluding Scala jars.
    • components

      ComponentProvider components()
      Returns a mechanism you can use to install/find/resolve components. A component is just a related group of files.