Some languages are not part of the GraalVM core download package and must be downloaded and installed separately. To assist you with this installation, languages are pre-packaged as Components.
The GraalVM installation contains the Graal Updater utility,
that can be used to manage components. Add the GraalVM
/bin folder to your
PATH environment variable in order to deploy the
gu installer tool.
The Graal Updater also verifies whether the version of the component is appropriate for your GraalVM installation. Component packages are released for each GraalVM release with respective updates. Component packages downloaded for previous release(s) cannot be used with newer ones.
There is a command-line help available.
gu -h to get command overview.
gu <command> -h to get help specific for the particular command.
Two modes of component installation are supported:
Manual installation: You download the component package yourself. The Graal Updater will install the pre-downloaded component package. These following pre-built language packages are at your disposal:
Installation from Catalog: There is a list of components maintained by Oracle, from which you can install a component just by name. The Graal Updater will download the component package for you.
With the already downloaded component package archive,
the component can be installed as
gu install component.jar
Installation from Catalog
The Graal Updater first downloads the list of components, then uses information in the list to download the actual component package for you and install it. To see which components are available, use
gu -c list
to get a list of available components, their IDs, and descriptive names. Then,
the component ID (for example
org.graalvm.ruby) can be used as
gu -c install org.graalvm.ruby
and that is all!
If you want to see more verbose messages during installation, you may use the
switch to see the download progress bar and verbose messages.
Installed components can be printed by
The Graal Updater can list components in the component catalog (not necessarily installed on your machine):
gu -c list
Components may be uninstalled from the GraalVM installation when you no longer need them.
To uninstall a specific component you need to know its ID (for example
The command to uninstall the component is:
gu uninstall org.graalvm.ruby
Uninstallation removes the files created during installation. If a file belongs to multiple components, it is removed when the last component using it is removed.
If the Graal Updater needs to reach the component catalog, or download a component package, it may need to pass through your HTTP proxy, if your network uses one. On MacOS X, the proxy settings are automatically obtained from the OS. On Linux, you must ensure that the
https_proxy environment variables are set appropriately before you launch
gu. Please refer to your distribution and/or desktop environment documentation for the details.
Replacing Components and Files
A component may be only installed once. The Graal Updater refuses to install a component if a component with the same ID is already installed. But the installed component may be replaced. Graal Updater first uninstalls the component and then installs the new package. To replace component, use
gu -r install component.zip gu -c -r install org.graalvm.ruby
The process is the same as if
gu uninstall is run first and
gu install next.
The Graal Updater also refuses to overwrite existing files if the to-be-installed and existing versions differ. There are cases when you may need to refresh file contents, if they were modified or damaged. Use
gu -o install component.jar gu -c -o install org.graalvm.ruby