#python #python-3.x #pexpect #pkg-resources
#python #python-3.x #pexpect #pkg-ресурсы
Вопрос:
Я скачал pyocd и успешно его собрал. Теперь я могу запустить инструмент из командной строки из любого места. Однако при попытке запустить его с помощью pexpect отображается следующая ошибка:
Traceback (most recent call last):
File "c:UserselephantAppDataLocalProgramsPythonPython37-32Scriptspyocd-script.py", line 6, in <module>
from pkg_resources import load_entry_point
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 668, in _load_unlocked
File "<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
File "C:Projectsrunnermytestvenvlibsite-packagessetuptools-39.1.0-py3.7.eggpkg_resources__init__.py", line 3086, in <module>
File "C:Projectsrunnermytestvenvlibsite-packagessetuptools-39.1.0-py3.7.eggpkg_resources__init__.py", line 3070, in _call_aside
File "C:Projectsrunnermytestvenvlibsite-packagessetuptools-39.1.0-py3.7.eggpkg_resources__init__.py", line 3099, in _initialize_master_working_set
File "C:Projectsrunnermytestvenvlibsite-packagessetuptools-39.1.0-py3.7.eggpkg_resources__init__.py", line 574, in _build_master
File "C:Projectsrunnermytestvenvlibsite-packagessetuptools-39.1.0-py3.7.eggpkg_resources__init__.py", line 892, in require
File "C:Projectsrunnermytestvenvlibsite-packagessetuptools-39.1.0-py3.7.eggpkg_resources__init__.py", line 778, in resolve
pkg_resources.DistributionNotFound: The 'pyocd==0.14.1.dev277 dirty' distribution was not found and is required by the application
Пожалуйста, помогите понять, что не так и почему это работает из командной строки?
Комментарии:
1. Похоже, что
$PYTHONPATH
переменная установлена неправильно. Или, возможно, вы установили несовместимую версию?.dev277 dirty
звучит немного странно, вы устанавливали из репозитория git?2. @MartinUeding Вы правы, это была пользовательская сборка. Я только что клонировал исходные тексты из Git и собрал его. Поведение такое же, но в другой версии:
pkg_resources.DistributionNotFound: The 'pyocd==0.17.1.dev71' distribution was not found and is required by the application
3. @MartinUeding
$PYTHONPATH
Переменной вообще нет. исполняемый файл pyocd находится вc:UserselephantAppDataLocalProgramsPythonPython37-32Scripts
.4. Версия верна
c:>pyocd -V
вывод0.17.1.dev71
Ответ №1:
Проблема заключалась в том, что я попытался создать, pyocd.exe
и pexpect
не смог найти пакет. Я изменил строку на python -m pyocd
, и она просто отлично работает. Я новичок в Python и ошибочно подумал, что exe- это скомпилированный код, как и другие exe-файлы в Windows. Однако это всего лишь инструкция по запуску пакета с использованием Python.