我已经安装了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