Ubuntu OS에서 QGI를 pycharm과 연결하는 방법


10

qgis와 함께 pycharm을 사용하기 시작했지만 둘 다 연결할 수 없습니다. Pycharm은 항상 "연결 대기 중"상태입니다. 사용 가능한 대부분의 자습서는 창을 가리 키지 만 우분투를 사용하고 있으므로 pycharm에서 qgis 코드를 디버깅하는 방법을 찾을 수 없습니다. 내 pycharm 코드는 다음과 같습니다.

from shapely.geometry import *
from shapely.wkt import loads

import sys

import pydevd

pydevd.settrace('localhost', port=53100, stdoutToServer=True, stderrToServer=True)

class Loader:

    def __init__(self, iface):

        """Initialize using the qgis.utils.iface
        object passed from the console.

        """
        self.iface = iface

pycharm에서 중단 점을 활성화하고 pythonpath에 pycharm-debug.egg를 추가하여 우분투의 qgis에서 어떻게 구성합니까?

pycharm은 항상 다음과 같습니다.

Starting debug server at port 53100
Use the following code to connect to the debugger:
import pydevd
pydevd.settrace('localhost', port=53100, stdoutToServer=True, stderrToServer=True)
Waiting for process connection...

qgis에서 맨 위에이 스크립트를 실행하면 아무 일도 일어나지 않으며 중단 점이 호출되지 않습니다.


Pycharm이 QGIS 클래스를 인식하도록 하시겠습니까?
wondim

답변:


1

아치 리눅스에서는 (우분투에서도 작동해야합니다) QGIS를로드 할 때 누군가가 포트 53100에서 수신 대기하는지 확인하는이 파이썬 스크립트를 사용합니다. 그렇다면 pycharm 디렉토리에서 pydevd를 가져오고 연결하려고합니다 원격 디버거

import psutil


def is_listening_local(port=53100):
    """Return True if someone is listening on the port"""

    els = psutil.net_connections()
    for el in els:
        if el.laddr.port == port:
            return True
    else:
        return False


if is_listening_local():
    try:
        import sys
        # Add the pydevd directory to PYTHONPATH
        sys.path.append('/opt/pycharm-professional/helpers/pydev/')

        import pydevd
        # Connect to the remote debugger
        pydevd.settrace(
            'localhost', port=53100, stdoutToServer=True, stderrToServer=True,
            suspend=False
        )
    except Exception:
        pass

내 완전한 구성은 여기에 있습니다

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.