Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ninia/jep
Embed Python in Java
https://github.com/ninia/jep
c cpython java jni python
Last synced: 1 day ago
JSON representation
Embed Python in Java
- Host: GitHub
- URL: https://github.com/ninia/jep
- Owner: ninia
- License: other
- Created: 2011-02-18T01:30:05.000Z (almost 14 years ago)
- Default Branch: master
- Last Pushed: 2025-01-02T01:29:19.000Z (21 days ago)
- Last Synced: 2025-01-14T15:10:42.134Z (8 days ago)
- Topics: c, cpython, java, jni, python
- Language: C
- Homepage:
- Size: 7.16 MB
- Stars: 1,353
- Watchers: 55
- Forks: 150
- Open Issues: 67
-
Metadata Files:
- Readme: README.rst
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Authors: AUTHORS
Awesome Lists containing this project
README
.. image:: https://img.shields.io/pypi/pyversions/Jep.svg
:target: https://pypi.python.org/pypi/jep.. image:: https://img.shields.io/pypi/l/Jep.svg
:target: https://pypi.python.org/pypi/jep.. image:: https://img.shields.io/pypi/v/Jep.svg
:target: https://pypi.python.org/pypi/jep
.. image:: https://img.shields.io/badge/docs-wiki-orange.svg
:target: https://github.com/ninia/jep/wiki.. image:: https://img.shields.io/badge/docs-javadoc-orange.svg
:target: https://ninia.github.io/jep/javadocJep - Java Embedded Python
===========================Jep embeds CPython in Java through JNI.
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.Installation
------------
Simply run ``pip install --no-cache-dir --no-build-isolation jep`` or download
the source and run ``pip install .``. Building and installing require the JDK,
Python, setuptools, and optionally numpy to be installed beforehand. The
``--no-cache-dir`` and ``--no-build-isolation`` options are not strictly
required, however those settings enable Jep to make customizations for your
environment such as enabling numpy specific behavior if numpy is installed.Dependencies
------------
* Python >= 3.6
* Java >= 1.8
* NumPy >= 1.7 (optional)Notable features
----------------
* Interactive Jep console much like Python's interactive console
* Supports multiple, simultaneous, mostly sandboxed sub-interpreters or shared interpreters
* Numpy support for Java primitive arraysHelp
----
* `Documentation `_
* `JavaDoc `_
* `Mailing List (deprecated) `_
* `Known Issues and Help `_
* `Contribution Guidelines `_
* `Project Page `_We welcome comments, contributions, bug reports, wiki documentation, etc.
If you need help, please first search for existing solutions online, in the
the issues, and on the wiki. If you still need help, please open a GitHub issue
and we will try and help you. Please remember to close the issue once it has
been resolved.*Jep Team*