начало затмения pydev - «ускорения отладчика с использованием cython не найдены», затем «произошло другое исключение» - PullRequest
0 голосов
/ 07 ноября 2018

Я прохожу «начало работы» на веб-сайте pydev, и все работало, как описано, пока я не попал в раздел об отладке, найденный на http://www.pydev.org/manual_101_run.html. Однако теперь я получаю отладчик с предупреждением » ускорения с использованием Cython не найден ", после чего возникает ошибка при попытке обработать это исключение.

Код, который я пытаюсь запустить, называется example.py:

'''
Created on Nov 7, 2018

@author: Chris
'''
if __name__ == '__main__':
    print('Hello World')

Когда я запускаю это без включенного режима отладки, он корректно выводит «Hello World» на консоль. Как рекомендуется на начальной странице, я добавил точку останова в строку 7 и повторно запустил код в режиме отладки (нажав клавишу F11). Когда я это делаю, я получаю следующий вывод консоли:

warning: Debugger speedups using cython not found. Run '"C:\Users\Chris\AppData\Local\Programs\Python\Python37\python.exe" "C:\Users\Chris\.p2\pool\plugins\org.python.pydev.core_7.0.0.201811071319\pysrc\setup_cython.py" build_ext --inplace' to build.
pydev debugger: starting (pid: 7864)
Traceback (most recent call last):
  File "_pydevd_bundle\pydevd_cython_win32_37_64.pyx", line 134, in _pydevd_bundle.pydevd_cython_win32_37_64.set_additional_thread_info
AttributeError: '_MainThread' object has no attribute 'additional_info'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\Chris\.p2\pool\plugins\org.python.pydev.core_7.0.0.201811071319\pysrc\pydevd.py", line 1951, in <module>
    main()
  File "C:\Users\Chris\.p2\pool\plugins\org.python.pydev.core_7.0.0.201811071319\pysrc\pydevd.py", line 1945, in main
    globals = debugger.run(setup['file'], None, None, is_module)
  File "C:\Users\Chris\.p2\pool\plugins\org.python.pydev.core_7.0.0.201811071319\pysrc\pydevd.py", line 1295, in run
    self.notify_thread_created(thread_id, t)
  File "C:\Users\Chris\.p2\pool\plugins\org.python.pydev.core_7.0.0.201811071319\pysrc\pydevd.py", line 662, in notify_thread_created
    additional_info = set_additional_thread_info(thread)
  File "_pydevd_bundle\pydevd_cython_win32_37_64.pyx", line 138, in _pydevd_bundle.pydevd_cython_win32_37_64.set_additional_thread_info
  File "_pydevd_bundle\pydevd_cython_win32_37_64.pyx", line 147, in _pydevd_bundle.pydevd_cython_win32_37_64.set_additional_thread_info
  File "_pydevd_bundle\pydevd_cython_win32_37_64.pyx", line 95, in _pydevd_bundle.pydevd_cython_win32_37_64.PyDBAdditionalThreadInfo.__init__
AttributeError: '_pydevd_bundle.pydevd_cython_win32_37_64.PyDBAdditionalThreadInfo' object has no attribute 'pydev_state'

Соответствующий вопрос Предупреждение Eclipse pydev - «Ускорения отладчика с использованием cython не найдены». Рекомендуется запустить код в первой строке предупреждения

"C:\Users\Chris\AppData\Local\Programs\Python\Python37\python.exe" "C:\Users\Chris\.p2\pool\plugins\org.python.pydev.core_7.0.0.201811071319\pysrc\setup_cython.py" build_ext --inplace

Когда я это делаю, я получаю следующую ошибку

  File "<input>", line 1
    "C:\Users\Chris\AppData\Local\Programs\Python\Python37\python.exe" "C:\Users\Chris\.p2\pool\plugins\org.python.pydev.core_7.0.0.201811071319\pysrc\setup_cython.py" build_ext --inplace
                                                                                                                                                                                ^
SyntaxError: invalid syntax

В случае, если это не очевидно, я являюсь новичком с python, eclipse, StackOverflow и PyDev - начав в каждом из них сегодня утром.

1 Ответ

0 голосов
/ 08 ноября 2018

Что касается вопроса о том, что он не работает в первую очередь, см .: https://stackoverflow.com/a/53210935/110451 (в вашем случае, просто обновление PyDev до 7.0.3 должно решить проблему).

Теперь о нечтобы иметь возможность регенерировать модули акселератора Cython, вы должны выполнить:

"C:\Users\Chris\AppData\Local\Programs\Python\Python37\python.exe" "C:\Users\Chris\.p2\pool\plugins\org.python.pydev.core_7.0.0.201811071319\pysrc\setup_cython.py" build_ext --inplace

в вашем терминале (то есть: в cmd.exe), а не как модуль Python ...

...