環境
OS | Windows10 64bit |
QGIS | QGIS3.4.4(OSGEO4W 32bit) |
Eclipse | 2018-12 64bit |
Java | Oracle JRE 10 |
PyDev | 7.1.0.201902031515 |
QGISをインストール
OSGEO4W版のインストーラーを起動しC:\OSGEO4Wにインストール
QGISを起動
Eclipse
以下よりEclipseをダウンロード
https://www.eclipse.org/downloads/download.php?file=/oomph/epp/2018-12/R/eclipse-inst-win64.exe
ダウンロードしたeclipse-inst-win64を実行
起動すると以下のメッセージ表示
Eclipseのサイトより「Oracle JRE 10」をダウンロード
https://download.eclipse.org/oomph/jre/index-handler.php?vm=1_1_7_0_64_0&pn=Eclipse%20Installer&pu=http://wiki.eclipse.org/Eclipse_Installer&pi=http://download.eclipse.org/oomph/jre/128×128.png
ダウンロードした「jre-10.0.2_windows-x64_bin」を実行
インストールボタンをクリック
再度「eclipse-inst-win64」を実行
eclipse インストーラーが起動されたら「eclipse IDE for java developers」を選択
証明書の確認
PyDev
Eclipseを起動してHelpメニューの「Install New Software」
「Work With」の「Add」ボタンをクリック
NameにPyDev、Locationに「http://pydev.org/updates」を指定しAddボタンをクリック
PyDevをチェックしてNEXTボタンをクリック
Detaileボタンを押してPydevのインストール先を確認してから「Install Anyway」を実行
PyDevの設定
Eclipseを起動して「Window」→「Preferences」を選択
左のTreeでPyDev-Interpreters-Python Interpreterを選択
QGISが使用するPython.exeを指定するためにQGISを起動してPYTHONHOMEの値を確認
「Browse for pythonpypy exe」ボタンを押してNAMEには任意の名称(ここではpython37)、値には先ほど調べたPython.exeのフルパスを指定。
Librariesは自動でいくつかの参照先が指定されるが手動で不足分を指定
先ほどインストール先を確認したPyDevも指定
Packagesには警告らしき表示があるが無視
Forced Builtinsのタブを表示して「New」ボタンを押してqgisとPyQt5をそれぞれ登録
Environmentoタブを表示して以下の環境変数を設定
「Apply」ボタンを押して「Apply and Close」ボタンを押して設定を反映
設定内容が即反映されないので「Apply」ボタンを押したら暫く待つこと。
※設定が終了する前に画面を閉じると正しく設定が終了しない
デバッグの準備
外部TOOLにQGISを設定
メニュ「Run」-「External Tools Configurations」を指定して外部TOOLとしてQGISを設定
プロジェクトを作成
Eclipseの「New」メニューから-「Project」-「PyDev Project」を選択
以下に従ってプロジェクトの内容を設定しFinishボタンを押す
確認のためにQGISのPlugin Builder3でプラグインを作成して「C:\Users\ユーザー名\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\」に配置
init.pyに以下を記述
import os,sys sys.path.append("C:\\Users\\kernel\\.p2\\pool\\plugins\\org.python.pydev.core_7.1.0.201902031515\\pysrc") import pydevd pydevd.settrace()
sys.pathに追加しているのはPyDev
この記述はEclipseを使用しないときはエラーとなる
これを記述するとclassFactory関数でブレークする
デバッグ実行
ここからの操作は若干確信がないが、とりあえず正しく動作したので良しとして説明
プラグイン「Remote Debug」と「Plugin Reloader」を有効にするためにプラグインの設定で実験的プラグインも表示する
デバッグボタンを押す
「start pydev Server」ボタンをクリック
「外部TOOL QGISを起動」