In Nashorn it is possible to access predefined classes of java ,
var ArrayList = Java.type(\'java.util.ArrayList\');
var list = new ArrayList();
list.add(\'a
You must use the -classpath
option of jrunscript
or jjs
.
-cp, -classpath (-cp path. Specify where to find user class files.)
The Java class:
package de.lhorn.so;
public class Foo {
public final static int ZERO = 0;
public static int i() {
return 1;
}
}
Compile it:
$ javac de/lhorn/so/Foo.java
$ tree de
de
└── lhorn
└── so
├── Foo.class
└── Foo.java
Use it:
% jrunscript -cp .
nashorn> var Foo = Java.type("de.lhorn.so.Foo")
nashorn> Foo.ZERO
0
nashorn> Foo.i
[jdk.internal.dynalink.beans.SimpleDynamicMethod int de.lhorn.so.Foo.i()]
nashorn> Foo.i()
1