Jep embeds CPython in Java through JNI and is safe to use in a heavily threaded environment.
Some benefits of embedding CPython in a JVM:
- Using the native Python interpreter may be much faster than alternatives.
- Python is mature, well supported, and well documented.
- Access to high quality Python modules, both native CPython extensions and Python-based.
- Compilers and assorted Python tools are as mature as the language.
- Python is an interpreted language, enabling scripting of established Java code without requiring recompilation.
- Both Java and Python are cross platform, enabling deployment to different operating systems.
Simply run pip install jep
or download the source and run python setup.py build install
.
Building and installing require the JDK, Python, and optionally numpy to be installed beforehand.
- Python 2.7, 3.3, 3.4, 3.5 or 3.6
- Java >= 1.7
- NumPy >= 1.7 (optional)
- Interactive Jep console much like Python's interactive console
- Supports multiple, simultaneous, mostly sandboxed sub-interpreters
- Numpy support for Java primitive arrays
- Documentation: https://github.com/ninia/jep/wiki
- Mailing List: https://groups.google.com/d/forum/jep-project
- Known Issues: https://github.com/ninia/jep/issues
- Project Page: https://github.com/ninia/jep
We welcome comments, contributions, bug reports, wiki documentation, etc.
Jep Team