Ошибка импорта DLL в Pycharm, но отлично работает снаружи - PullRequest
0 голосов
/ 21 ноября 2018

У меня есть новые установки Anaconda и PyCharm на компьютере с Windows.

Просто работает

import numpy

поднимает

ImportError: DLL load failed: The specified module could not be found.

В похожих вопросах ( 1 , 2 ), люди предлагают проверить, что PATH имеет пути к DLL.В моем случае - это так!Но вместо этого у меня есть дополнительные пути, добавленные к PATH, когда я запускаю что-то из PyCharm.И я думаю, что это может быть проблемой.

При запуске из командной строки Anaconda sys.path имеет вид:

C:\Users\usr\Anaconda3\python37.zip
C:\Users\usr\Anaconda3\DLLs
C:\Users\usr\Anaconda3\lib
C:\Users\usr\Anaconda3
C:\Users\usr\Anaconda3\lib\site-packages
C:\Users\usr\Anaconda3\lib\site-packages\win32
C:\Users\usr\Anaconda3\lib\site-packages\win32\lib
C:\Users\usr\Anaconda3\lib\site-packages\Pythonwin

При запуске из консоли Python в Pycharm sys.path - то же самое, за исключением того, что теперь у нас есть две дополнительные строки вначало файла:

C:\Users\usr\AppData\Local\JetBrains\Toolbox\apps\PyCharm-C\ch-0\182.4505.26\helpers\pydev
C:\Users\usr\AppData\Local\JetBrains\Toolbox\apps\PyCharm-C\ch-0\182.4505.26\helpers\pydev

Кстати, первоначальная ошибка поднимается с C:\Users\usr\AppData\Local\JetBrains\Toolbox\apps\PyCharm-C\ch-0\182.4505.26\helpers\pydev\_pydev_bundle\pydev_import_hook.py.
Так что я думаю, что это определяет проблему, но я не знаю, почему она возникает,почему это не произошло на моей другой машине, и что более важно, как это исправить?


Технические данные:

PyCharm 2018.2.4 (Community Edition)
Build #PC-182.4505.26, built on September 19, 2018
JRE: 1.8.0_152-release-1248-b8 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

Windows 10 10.0

Python: 3.7, 3.6.6;

numpy: 1.15.4; 1.14.6

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

Последнее, что я нашел от pydev, - это обходной путь, который похож на pycharm, но из затмения IDE в качестве плагина:

"Как примечание, сейчас обходной путь может запускать Eclipse из этой оболочки, перейдя к соответствующему интерпретатору и добавив переменную окружения 'PATH', чтобы она соответствовала той, которая должна запускать conda (вы можете принудительно установить переменные окружения для конкретного интерпретатора). " Ссылка

Это, вероятно, может быть сделано таким же образом для pycharm, т.е.запуск pycharm из правильной среды и явная установка переменной пути.

0 голосов
/ 18 декабря 2018

Это открытый баг; Этот ответ из системы отслеживания проблем Jetbrains временно исправил проблему для меня.

  • открыть командную строку
  • активировать conda venv
  • getправильное значение PATH по эхо% PATH%
  • , откройте PyCharm и установите новое значение PATH
    • для консоли Python в настройках |Сборка, выполнение, развертывание |Консоль |Консоль Python |Переменные среды
    • для запуска сценариев в Run |Редактировать конфигурации ... ||Переменные среды

UPD: Ошибка, исправленная в 2019.1

...