Skip to content

Commit f38c89f

Browse files
committed
fix command lines in documentation
1 parent 45aa4d0 commit f38c89f

1 file changed

Lines changed: 19 additions & 12 deletions

File tree

docs/user/RunOnJDK.md

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,17 +21,22 @@ In essence, the example POM file activates JVMCI to install additional JIT compi
2121

2222
### GraalVM JavaScript without Maven - JAR Files from GraalVM
2323
To work without Maven, the JAR files from a GraalVM release can be used as well.
24-
GraalVM is available as [Enterprise](https://www.oracle.com/downloads/graalvm-downloads.html) and [Community](https://github.com/oracle/graal/releases) Editions. Both editions' files can be used.
24+
GraalVM is available as [Enterprise](https://www.oracle.com/downloads/graalvm-downloads.html) and [Community](https://github.com/oracle/graal/releases) Editions.
25+
Both editions' files can be used.
2526

2627
The relevant files are:
2728
* _$GRAALVM/jre/languages/js/graaljs.jar_ - core component of GraalVM JavaScript (always required)
28-
* _$GRAALVM/jre/tools/regex/tregex.jar_ - GraalVM's regular expression engine (always required)
29+
* _$GRAALVM/jre/languages/js/icu4j.jar_ - ICU4J component for internationalization (always required)
30+
* _$GRAALVM/jre/languages/regex/tregex.jar_ - GraalVM's regular expression engine (always required)
2931
* _$GRAALVM/jre/lib/boot/graal-sdk.jar_ - GraalVM's SDK to implement languages (always required)
3032
* _$GRAALVM/jre/lib/truffle/truffle-api.jar_ - GraalVM's Language API, to implement language interpreters (always required)
3133
* _$GRAALVM/jre/lib/graalvm/graaljs-launcher.jar_ - GraalVM JavaScript's command line interpreter (optional)
3234
* _$GRAALVM/jre/lib/graalvm/launcher-common.jar_ - common launcher code shared by all languages (required by _graaljs-launcher.jar_)
3335
* _$GRAALVM/jre/lib/boot/graaljs-scriptengine.jar_ - GraalVM JavaScript's ScriptEngine/JSR 223 support (optional)
3436

37+
The files are displayed here are for a JDK8 build.
38+
In a JDK11+ build, the *.jar files are located in different directories.
39+
3540
## GraalVM JavaScript on JDK 8
3641

3742
The following command line executes GraalVM JavaScript on a JDK 8, starting a JavaScript console.
@@ -41,7 +46,8 @@ See the JDK 11 example below for how to improve on this.
4146
*On Linux*
4247
```shell
4348
GRAALVM=/path/to/GraalVM
44-
/path/to/jdk8/bin/java -cp $GRAALVM/jre/lib/graalvm/launcher-common.jar:$GRAALVM/jre/lib/graalvm/graaljs-launcher.jar:$GRAALVM/jre/languages/js/graaljs.jar:$GRAALVM/jre/lib/truffle/truffle-api.jar:$GRAALVM/jre/lib/boot/graal-sdk.jar:$GRAALVM/jre/lib/boot/graaljs-scriptengine.jar:$GRAALVM/jre/tools/regex/tregex.jar com.oracle.truffle.js.shell.JSLauncher
49+
JDK8=/path/to/jdk8
50+
$JDK8/bin/java -cp $GRAALVM/jre/lib/graalvm/launcher-common.jar:$GRAALVM/jre/lib/graalvm/graaljs-launcher.jar:$GRAALVM/jre/languages/js/graaljs.jar:$GRAALVM/jre/lib/truffle/truffle-api.jar:$GRAALVM/jre/lib/boot/graal-sdk.jar:$GRAALVM/jre/lib/boot/graaljs-scriptengine.jar:$GRAALVM/jre/languages/regex/tregex.jar:$GRAALVM/jre/languages/js/icu4j.jar com.oracle.truffle.js.shell.JSLauncher
4551
```
4652

4753
*On MacOS* - identical to the Linux command except for the path to GraalVM you need to add `Contents/Home`:
@@ -52,7 +58,7 @@ GRAALVM=/path/to/graalvm/Contents/Home
5258
*On Windows* - GraalVM JavaScript offers preliminary support for Windows:
5359
```shell
5460
set GRAALVM=c:\path\to\graalvm
55-
%GRAALVM%\bin\java -cp %GRAALVM%\jre\lib\graalvm\launcher-common.jar;%GRAALVM%\jre\lib\graalvm\graaljs-launcher.jar;%GRAALVM%\jre\languages\js\graaljs.jar;%GRAALVM%\jre\lib\truffle\truffle-api.jar;%GRAALVM%\jre\lib\boot\graal-sdk.jar;%GRAALVM%\jre\lib\boot\graaljs-scriptengine.jar;%GRAALVM%\jre\tools\regex\tregex.jar com.oracle.truffle.js.shell.JSLauncher
61+
%GRAALVM%\bin\java -cp %GRAALVM%\jre\lib\graalvm\launcher-common.jar;%GRAALVM%\jre\lib\graalvm\graaljs-launcher.jar;%GRAALVM%\jre\languages\js\graaljs.jar;%GRAALVM%\jre\lib\truffle\truffle-api.jar;%GRAALVM%\jre\lib\boot\graal-sdk.jar;%GRAALVM%\jre\lib\boot\graaljs-scriptengine.jar;%GRAALVM%\jre\languages\regex\tregex.jar;%GRAALVM%\jre\languages\js\icu4j.jar com.oracle.truffle.js.shell.JSLauncher
5662
```
5763

5864
To start a Java application instead and launch GraalVM JavaScript via GraalVM SDK's `Context` (encouraged) or a `ScriptEngine` (supported, but discouraged), _launcher-common.jar_ and _graaljs-launcher.jar_ can be omitted (see example below).
@@ -81,19 +87,20 @@ Assuming this code is called from `MyJavaApp.java` and is properly compiled to a
8187

8288
```shell
8389
GRAALVM=/path/to/GraalVM
84-
/path/to/jdk8/bin/java -cp $GRAALVM/jre/languages/js/graaljs.jar:$GRAALVM/jre/lib/truffle/truffle-api.jar:$GRAALVM/jre/lib/boot/graal-sdk.jar:$GRAALVM/jre/lib/boot/graaljs-scriptengine.jar:$GRAALVM/jre/tools/regex/tregex.jar:. MyJavaApp
90+
JDK8=/path/to/jdk8
91+
$JDK8/bin/java -cp $GRAALVM/jre/languages/js/graaljs.jar:$GRAALVM/jre/lib/truffle/truffle-api.jar:$GRAALVM/jre/lib/boot/graal-sdk.jar:$GRAALVM/jre/lib/boot/graaljs-scriptengine.jar:$GRAALVM/jre/languages/regex/tregex.jar:$GRAALVM/jre/languages/js/icu4j.jar:. MyJavaApp
8592
```
8693

87-
## GraalVM JavaScript on JDK 11
88-
The Maven example given above is the preferred way to start on JDK 11.
89-
Working without Maven, you have to provide the JAR files manually to the `java` command.
94+
## GraalVM JavaScript on JDK 11+
95+
The Maven example given above is the preferred way to start on JDK 11 (or newer).
96+
Working without Maven, you can provide the JAR files manually to the `java` command.
9097
Using `--upgrade-module-path` executes GraalVM JavaScript with the GraalVM compiler, guaranteeing the best performance.
91-
For that, the [GraalVM compiler](https://github.com/oracle/graal/tree/master/compiler) built with JDK 11 is required.
98+
The GraalVM JAR files can be downloaded from [org.graalvm at Maven](https://mvnrepository.com/artifact/org.graalvm), and the ICU4J library from [org.ibm.icu at Maven](https://mvnrepository.com/artifact/com.ibm.icu/icu4j).
9299

93100
```shell
94-
GRAALVM=/path/to/GraalVM
95-
GRAAL_JDK11=/path/to/Graal
96-
/path/to/jdk-11/bin/java -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler --module-path=$GRAAL_JDK11/graal/sdk/mxbuild/modules/org.graalvm.graal_sdk.jar:$GRAAL_JDK11/graal/truffle/mxbuild/modules/com.oracle.truffle.truffle_api.jar --upgrade-module-path=$GRAAL_HOME/graal/compiler/mxbuild/modules/jdk.internal.vm.compiler.jar:$GRAAL_HOME/graal/compiler/mxbuild/modules/jdk.internal.vm.compiler.management.jar -cp $GRAALVM/jre/lib/graalvm/launcher-common.jar:$GRAALVM/jre/lib/graalvm/graaljs-launcher.jar:$GRAALVM/jre/languages/js/graaljs.jar:$GRAALVM/jre/lib/truffle/truffle-api.jar:$GRAALVM/jre/lib/boot/graal-sdk.jar:$GRAALVM/jre/lib/boot/graaljs-scriptengine.jar:$GRAALVM/jre/tools/regex/tregex.jar com.oracle.truffle.js.shell.JSLauncher
101+
JARS=/path/to/JARs
102+
JDK=/path/to/JDK
103+
$JDK/bin/java -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler --module-path=$JARS/graal-sdk-21.0.0.jar:$JARS/truffle-api-21.0.0.jar --upgrade-module-path=$JARS/compiler-21.0.0.jar:$JARS/compiler-management-21.0.0.jar -cp $JARS/launcher-common-21.0.0.jar:$JARS/js-launcher-21.0.0.jar:$JARS/js-21.0.0.jar:$JARS/truffle-api-21.0.0.jar:$JARS/graal-sdk-21.0.0.jar:$JARS/js-scriptengine-21.0.0.jar:$JARS/regex-21.0.0.jar:$JARS/icu4j-67.1.jar com.oracle.truffle.js.shell.JSLauncher
97104
```
98105

99106
### Inspecting the Setup - Is the GraalVM Compiler Used as a JIT Compiler?

0 commit comments

Comments
 (0)