web-dev-qa-db-ja.com

PyDev / EclipseがConda環境から実行されたときに_mklinitをロードしない

私はconda環境を作成しました-testenv2-python/numpy/pandasをインストールしました。それをEclipseプロジェクト設定のインタープリターとして追加し、それを使用してテストを実行しますpythonスクリプト。そして、以下のエラーが発生します。condaをアクティブにすると、同じテストスクリプトがコマンドラインから正常に機能しますPyCharmからも動作しますが、Eclipseでの起動に失敗します。

Traceback (most recent call last):
  File "C:\Data\projects\Eclipse-workspace\PythonEclipse\Test.py", line 1, in <module>
    import numpy as np
  File "C:\Data\devtools\Anaconda3\envs\testenv2\lib\site-packages\numpy\__init__.py", line 140, in <module>
    from . import _distributor_init
  File "C:\Data\devtools\Anaconda3\envs\testenv2\lib\site-packages\numpy\_distributor_init.py", line 34, in <module>
    from . import _mklinit
ImportError: DLL load failed: The specified module could not be found.

ルートConda Python=インタープリターを使用して同じテストスクリプトを実行した場合、それは正常に機能します。つまり、condaから作成した環境を使用しようとした場合のみです。

助けてくれてありがとう!

4
endless

ここ 問題に関連するcondaのトラブルシューティングページのセクションを見つけることができ、非アクティブな環境が問題だと思います。

最新のcondaバージョンでは、開発者は、環境変数をパスで汚染する代わりに、環境でアクションを実行するときに環境がアクティブ化されていることを確認する必要があると判断しました。そうしないと、必要なDLLなどが見つかりません。

現在のIDEは必ずしもその変更に必ずしも適応していません。私はPyCharmで統合されたPython consolesを使用できません。これは、事前に環境をアクティブ化せずに実行しようとするためです。明らかに、問題は次のリリース。

とにかく、IDEコマンドを実行する前にconda環境をアクティブにできない場合は、通常の端末を使用するだけで環境をアクティブにできます。

0
la danlupei