JavaScript Compiler

The JavaScript compiler translates JavaScript source into Java class files. The resulting Java class files can then be loaded and executed at another time, providing a convenient method for transfering JavaScript, and for avoiding translation cost.

Note that the top-level functions available to the shell (such as print) are not available to compiled scripts when they are run outside the shell.
 

Invoking the Compiler

java org.mozilla.javascript.tools.jsc.Main [options] file1.js [file2.js...]

where options are:

-extends java-class-name

Specifies that a java class extending the Java class java-class-name should be generated from the incoming JavaScript source file. Each global function in the source file is made a method of the generated class, overriding any methods in the base class by the same name.
-implements java-intf-name
Specifies that a java class implementing the Java interface java-intf-name should be generated from the incoming JavaScript source file. Each global function in the source file is made a method of the generated class, implementing any methods in the interface by the same name.
-debug
-g -nosource -o outputFile -opt optLevel
-O optLevel -package packageName -version versionNumber

Examples

$ cat test.js
java.lang.System.out.println("hi, mom!");
$ java org.mozilla.javascript.tools.jsc.Main test.js
$ ls *.class
test.class
$ java test
hi, mom!

$ java org.mozilla.javascript.tools.jsc.Main -extends java.applet.Applet \
    -implements java.lang.Runnable NervousText.js
 



back to top