Installation¶
Get JPype from the github or from PyPi. If you are using Anaconda Python stack, you can install pre-compiled binaries from conda-forge for Linux, OSX and Windows.
Binary Install¶
Ensure you have installed Anaconda/Miniconda. Instructions can be found here.
Install from the conda-forge software channel:
conda install -c conda-forge jpype1
From source - Requirements¶
Either the Sun/Oracle JDK/JRE Variant or OpenJDK. Python 2.6+ (including Python 3+).
Debian/Ubuntu¶
Debian/Ubuntu users will have to install g++
and python-dev
first:
sudo apt-get install g++ python-dev
Windows¶
Windows users need a Python installation and C++ compilers:
Install some version of Python (2.7 or higher), e.g., Anaconda is a good choice for users not yet familiar with the language
Install a Windows C++ Compiler
Install¶
Should be easy as
python setup.py install
If it fails…¶
This happens mostly due to the setup not being able to find your
JAVA_HOME
. In case this happens, please do two things:
You can continue the installation by finding the
JAVA_HOME
on your own ( the place where the headers etc. are) and explicitly setting it for the installation:JAVA\_HOME=/usr/lib/java/jdk1.6.0/ python setup.py install
Please create an Issue on github and post all the information you have.
Tested on¶
OS X 10.7.4 with Sun/Oracle JDK 1.6.0
OSX 10.8.1-10.8.4 with Sun/Oracle JDK 1.6.0
OSX 10.9 DP5
Debian 6.0.4/6.0.5 with Sun/Oracle JDK 1.6.0
Debian 7.1 with OpenJDK 1.6.0
Ubuntu 12.04 with Sun/Oracle JDK 1.6.0
Known Bugs/Limitations¶
Java classes outside of a package (in the
<default>
) cannot be imported.unable to access a field or method if it conflicts with a python keyword.
Because of lack of JVM support, you cannot shutdown the JVM and then restart it.
Some methods rely on the “current” class/caller. Since calls coming directly from python code do not have a current class, these methods do not work. The User Manual lists all the known methods like that.
Mixing 64 bit Python with 32 bit Java and vice versa crashes on import jpype.