Interface IExecutionEnvironment


public interface IExecutionEnvironment
An execution environment describes capabilities of a Java runtime environment (IVMInstall).

An execution environment is contributed in plug-in XML via the org.eclipse.jdt.launching.executionEnvironments extension point.

Clients contributing execution environments may provide and implement execution environment analyzer delegates.

Since:
3.2
See Also:
Restriction:
This interface is not intended to be implemented by clients.
Restriction:
This interface is not intended to be extended by clients.
  • Method Details

    • getId

      String getId()
      Returns a unique identifier for this execution environment. Corresponds to the id attribute in plug-in XML.
      Returns:
      unique identifier of this execution environment
    • getDescription

      String getDescription()
      Returns a brief human-readable description of this environment.
      Returns:
      brief human-readable description of this environment.
    • getCompatibleVMs

      IVMInstall[] getCompatibleVMs()
      Returns a collection of VM installs compatible with this environment, possibly empty.
      Returns:
      a collection of VM installs compatible with this environment, possibly empty.
    • isStrictlyCompatible

      boolean isStrictlyCompatible(IVMInstall vm)
      Returns whether the specified VM install is strictly compatible with this environment. Returns true to indicate the VM install is strictly compatible with this environment and false to indicate the VM install represents a superset of this environment.
      Parameters:
      vm - VM install
      Returns:
      whether the VM install is strictly compatible with this environment
    • getDefaultVM

      IVMInstall getDefaultVM()
      Returns the VM that is used by default for this execution environment, or null if none.
      Returns:
      default VM for this environment or null if none
    • setDefaultVM

      void setDefaultVM(IVMInstall vm)
      Sets the VM to use by default for this execution environment.
      Parameters:
      vm - VM to use by default for this execution environment, or null to clear the default setting
      Throws:
      IllegalArgumentException - if the given VM is not compatible with this environment
    • getAccessRules

      IAccessRule[][] getAccessRules(IVMInstall vm, LibraryLocation[] libraries, IJavaProject project)
      Returns a collection of access rules to be applied to the specified VM libraries for this execution environment in the context of the given project. An array of access rules is returned for each library specified by libraries, possibly empty.

      Access rules for an execution environment are defined by access rule participants contributed in a org.eclipse.jdt.launching.executionEnvironments extension.

      Parameters:
      vm - the VM that access rules are requested for
      libraries - the libraries that access rules are requested for
      project - the project the access rules are requested for or null if none
      Returns:
      a collection of arrays of access rules - one array per library
      Since:
      3.3
    • getProfileProperties

      Properties getProfileProperties()
      Returns the OSGi profile properties associated with this execution environment or null if none. Profile properties specify attributes such as Constants.FRAMEWORK_SYSTEMPACKAGES. Profile properties can be optionally contributed with an execution environment extension.
      Returns:
      associated profile properties or null if none
      Since:
      3.5
    • getSubEnvironments

      IExecutionEnvironment[] getSubEnvironments()
      Returns a collection of execution environments that are subsets of this environment.
      Returns:
      a collection of execution environments that are subsets of this environment
      Since:
      3.5
    • getComplianceOptions

      Map<String,String> getComplianceOptions()
      Returns a map of Eclipse Java compiler options specified as default settings to use when building with this profile, or null if unspecified.
      Returns:
      a map of Eclipse Java compiler options associated with this profile or null
      Since:
      3.5