Skip to content

Latest commit

 

History

History
 
 

sdk

GraalVM Standard Development Kit

The GraalVM SDK is a collection of APIs for the components of GraalVM.

Getting Started

To get started, download and install GraalVM for your operating system as described in the installation guide. The org.graalvm.nativeimage, org.graalvm.word, and org.graalvm.collection modules from the GraalVM SDK are included in a GraalVM JDK and can be used like any other module.

The GraalVM SDK bits are also available on Maven central. Add these module dependencies to your Maven project configuration file:

<dependency>
  <groupId>org.graalvm.sdk</groupId>
  <artifactId>nativeimage</artifactId>
  <version>${graalvm.version}</version>
</dependency>
<dependency>
  <groupId>org.graalvm.sdk</groupId>
  <artifactId>word</artifactId>
  <version>${graalvm.version}</version>
</dependency>
<dependency>
  <groupId>org.graalvm.sdk</groupId>
  <artifactId>collections</artifactId>
  <version>${graalvm.version}</version>
</dependency>

The org.graalvm.polyglot module is not contained by default in the GraalVM JDK. To enable a language embedding in Java, specify the language as a dependency. If you need the Truffle tools for your polyglot application, enable them through a dependency too. Below is an example of the Maven configuration:

<dependency>
  <groupId>org.graalvm.polyglot</groupId>
  <artifactId>polyglot</artifactId>
  <version>${graalvm.polyglot.version}</version>
</dependency>
<dependency>
  <groupId>org.graalvm.polyglot</groupId>
  <artifactId>js|python|ruby|wasm|llvm|java</artifactId> 
  <version>${graalvm.polyglot.version}</version>
  <type>pom</type>
</dependency>
<dependency>
  <groupId>org.graalvm.polyglot</groupId>
  <artifactId>tools</artifactId>
  <version>${graalvm.polyglot.version}</version>
  <type>pom</type>
</dependency>

Learn More

Changes

Important API changes and additions are tracked in the SDK changelog.

License

GraalVM SDK is licensed under the Universal Permissive License.