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:
    IExecutionEnvironmentAnalyzerDelegate
    Restriction:
    This interface is not intended to be implemented by clients.
    Restriction:
    This interface is not intended to be extended by clients.
    • Method Detail

      • 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