condaでpyjniusをインストールしました。ただし、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