Class WinEnvVars

java.lang.Object
com.install4j.api.windows.WinEnvVars

public class WinEnvVars extends Object
Collection of static methods to get and modify environment variables on Windows.
  • Constructor Details

    • WinEnvVars

      public WinEnvVars()
  • Method Details

    • set

      public static void set(String key, String value) throws IOException
      Sets a global environment variable. Needs Administrator rights.
      Parameters:
      key - the name of the environment variable
      value - the value of the environment variable
      Throws:
      IOException - if the environment variable could not be set
    • setUserSpecific

      public static void setUserSpecific(String key, String value) throws IOException
      Sets a user-specific environment variable.
      Parameters:
      key - the name of the environment variable
      value - the value of the environment variable
      Throws:
      IOException - if the environment variable could not be set
    • getenv

      public static String getenv(String key)
      Returns a single environment variable.
      Parameters:
      key - the name of the environment variable. Case does not matter.
      Returns:
      the value of the environment variable or null if not defined
    • getenv

      public static Properties getenv()
      Returns all environment variables.
      Returns:
      a property map with all environment variables and its values
    • getFromRegistry

      public static String getFromRegistry(String key, boolean userSpecific) throws IOException
      Return an environment variable as set in the Windows registry. The user-specific setting may be different from the value returned in getenv(). For example, the PATH environment variable is modified by the install4j launcher and is not equal to the system setting. In addition, the value returned for PATH will have no variable substitutions performed.
      Parameters:
      userSpecific - If true the user-specific variant should be retrieved. Otherwise the global setting will be returned.
      Returns:
      the value of the environment variable or null if not defined
      Throws:
      IOException - if the environment variable could not be retrieved
    • appendToPath

      public static void appendToPath(String value) throws IOException
      Appends one or more directories to the PATH environment variable. Needs Administrator rights.
      Parameters:
      value - the value to be appended to the path
      Throws:
      IOException - if the environment variable could not be set
    • prependToPath

      public static void prependToPath(String value) throws IOException
      Prepends one or more directories to the PATH environment variable. Needs Administrator rights.
      Parameters:
      value - the value to be appended to the path
      Throws:
      IOException - if the environment variable could not be set
    • appendToUserPath

      public static void appendToUserPath(String value) throws IOException
      Appends one or more directories to the user-specific PATH environment variable.
      Parameters:
      value - the value to be appended to the path
      Throws:
      IOException - if the environment variable could not be set
      See Also:
    • prependToUserPath

      public static void prependToUserPath(String value) throws IOException
      Prepends one or more directories to the user-specific PATH environment variable.
      Parameters:
      value - the value to be appended to the path
      Throws:
      IOException - if the environment variable could not be set
      See Also: