Конда не устанавливает должным образом путь для JDK для Pyjnius - PullRequest
0 голосов
/ 24 сентября 2019

Я установил 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
...