-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to correcty install and use JyNI with numpy support on Jython? #39
Comments
It seems that the previous problem was connected with too late version of Numpy: it was 1.16. As you recommend, I switched to Numpy 1.13.3. Jython currently cannot install numpy, but I found workaround: installed Python 2.7.9, installed their Numpy 1.13.3 and copied the folders numpy and numpy-1.13.3.dist-info from Python's directory site-packages into the same directory of Jython. Now my test SimpleJythonNumpyTest.py consists of only 1 line: Java version: "17.0.2" 2022-01-18 LTS Numpy is successully imported, but the result is the system crash: see hs_err_pid8120.log |
Hello Daniel, thank you for your interest in JyNI. However, if your goal is to do data-science beyond some numpy-numerics, Jython+JyNI is probably not sufficient. Already SciPy does not work and NumPy only works for a narrow set of versions and somewhat limited functionality. That JyNI is experimental is indicated by the "alpha" in the version name.
Yes, that is much how I used to do it. Using CPython 2.7 pip to install NumPy and dependencies is my recommended way. Then simply add the path to Jython's library path (
Alternatively, one can build NumPy from source (in-place build!) (easy on Linux, difficult on Windows) and put that folder on the library path. Anyway. There are plenty of reasons for broken config. Last but not least I never tested on recent Java (also because Jython itself used to have issues with recent Java). Easiest way to check out JyNI with NumPy is a stand-alone image I do not distribute publicly. Write to me at contact@jyni.org. |
Hello,
I don't understand well the sequence of steps to start usage of JyNI with numpy (Windows platform). I already created an issue on Jython site:
https://bugs.jython.org/issue2930
But I'm not sure that it is a correct place, maybe it is question to you.
I read your paper https://arxiv.org/pdf/1607.00825v1.pdf and tried to reproduce the simplest example:
import sys
sys.path.append(’path_to_numpy1.12_pre-release’)
import numpy as np
a = np.array([2, 5, 7])
...
But what is here the 'path_to_numpy1.12'? Where should I place the content of your archive JyNI-2.7-alpha.5-bin-win-amd64.zip ? Now I just unpacked it and placed both files into C:\JyNI , then added this directory to sys.path.append. But it seems that it is not a right way. Results are the following:
Traceback (most recent call last):
File "C:/siams/computer-vision/stare-python/jython-experiments/net/algart/jython/tests/SimpleJythonNumpyTest.py", line 3, in
import numpy as np
File "C:\jython2.7.2\Lib\site-packages\numpy_init_.py", line 142, in
from . import core
File "C:\jython2.7.2\Lib\site-packages\numpy\core_init_.py", line 71, in
raise ImportError(msg)
ImportError:
IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
Importing the multiarray numpy extension module failed. Most
likely you are trying to import a failed build of numpy.
Here is how to proceed:
git clean -xdf
(removes all files not under version control) and rebuild numpy.
your installation is broken - please reinstall numpy.
Check that you are using the Python you expect (you're using C:\jython2.7.2\bin\jython.exe),
and that you have no directories in your PATH or PYTHONPATH that can
interfere with the Python and numpy versions you're trying to use.
If (1) looks fine, you can open a new issue at
https://github.com/numpy/numpy/issues. Please include details on:
Note: this error has many possible causes, so please don't comment on
an existing issue about this - open a new one instead.
Original error was: No module named _multiarray_umath
The text was updated successfully, but these errors were encountered: