jython(1) Python seamlessly integrated with Java


jython [ -i ] [ -S ] [ -v ] [ -Dproperty=value ... ] [ -Wargument ]

       [ -Ecodec ] [ -Qargument ]

       [ -jar jar | -c cmd | file | - ] [ script-args ]

jython [ --help | --version ]


Jython is an implementation of the high-level, dynamic, object-oriented language Python seamlessly integrated with the Java platform. The predecessor to Jython, JPython, is certified as 100% Pure Java.

Jython is complementary to Java and is especially suited for the following tasks:

Embedded scripting:
Java programmers can add the Jython libraries to their system to allow end users to write simple or complicated scripts that add functionality to the application.
Interactive experimentation:
Jython provides an interactive interpreter that can be used to interact with Java packages or with running Java applications. This allows programmers to experiment with and debug any Java system using Jython.
Rapid application development:
Python programs are typically 2-10X shorter than the equivalent Java program. This translates directly to increased programmer productivity. The seamless interaction between Python and Java allows developers to freely mix the two languages both during development and in shipping products.

To make a jython script executable on your system you can add the following line to the top of the file:

#!/usr/bin/env jython

You will also need to add execute permissions to the script using chmod(1). Note that #!/usr/bin/jython will not work; you must use #!/usr/bin/env jython. This is because /usr/bin/jython is a script itself, not a compiled binary.


A summary of options is included below.
Continue running Jython interactively after running the given script, and force prompts even if standard input doesn't appear to be a terminal.
Don't imply import site on initialisation.
Trace import statements on error output.
Set the Jython property property to value; see jython.conf(5) for details of available properties.
Warning control. The full form of argument is action:message:category:module:line. Trailing empty fields may be omitted. Multiple -W options may be given. See documentation of the warnings module for details.
Set the encoding used to read module source files from disk.
Division control. See PEP 239 for details. Valid arguments are old, new, warn and warnall.
-jar jar
The program to run is read from the file __run__.py in the specified jar archive.
-c cmd
The program to run is passed as the cmd string. This option terminates the options list.
The program to run is the script file.
The program to run is read from standard input (default behaviour). Interactive mode is used if running on a tty. This flag allows you to pipe a file into Jython and have it be treated correctly.
Command-line arguments to pass to the Jython script in sys.argv[1:].
Print a usage message and exit.
Print the Jython version number and exit.


JAVA (default: /usr/bin/java)
The Java interpreter to use when running Jython.
JAVA_OPTIONS (default: empty)
Options to pass to the Java interpreter when running Jython.


This manual page was prepared by Ben Burton <[email protected]> for the Debian GNU/Linux system (but may be used by others). It is based upon the official Jython documentation.