Я установил pyjnius с conda.Однако, когда я пытаюсь импортировать pyjnius, он терпит неудачу
> from jnius import autoclass
File
"C:\Users\OEM\Miniconda3\envs\example-env\lib\site-packages\jnius\__init__.py",
line 12, in <module>
from .jnius import * # noqa ImportError: DLL load failed: The specified module could not be found.
Вместе с pyjnius conda устанавливает также openjdk.Затем pyjnius ищет jvm.dll
в одном из PATH
каталогов.DLL может быть найдена в
C: \ Users \ OEM \ Miniconda3 \ pkgs \ openjdk-11.0.1-1017 \ Library \ bin \ server
, но conda делаетне включайте его в PATH
.Он добавляет еще одну папку в PATH
:
C: \ Users \ OEM \ Miniconda3 \ envs \ example2-env \ Library \ jre \ bin \ server
, в то время какэтот каталог отсутствует: JRE не был установлен, только JDK.Очевидно, я могу включить первый каталог в мой PATH
, однако это обойдёт концепцию виртуальных сред conda.Как я могу решить эту проблему элегантным способом?
Вот environment.yml
для воспроизведения проблемы:
name: example-env
channels:
- conda-forge
dependencies:
- python=3.7
- Cython
- pyjnius
Далее я создаю и активирую следующим образом:
conda env update --file environment.yml
conda activate example-env