本文借鉴早期QGIS2开发环境搭建的一篇文章,由于版本较早,再此进行更新记录:
本文包含基本的
PyQGIS
开发环境配置,详细描述如何使用
Eclipse + PyDev
搭建
PyQGIS插件开发的调试环境。
PyQGIS安装
在
windows
系统下,
QGIS
安装包会自动安装
PyQGIS
模块,如果使用
Linux
或者
Mac
系统的
话,则需要单独安装。(本文重点讲述
Windows
系统,
Linux
和
Mac
系统环境配置请参见
QGIS
官方网站的帮助文档)
环境变量设置
Windows
系统下配置变量主要包含两个部分:
1. PATH
变量的配置
先设置系统变量path,要把qgis下的py37目录也放进去(切记要放到最前面,防止被其他地方安装的python覆盖),如:
E:\Program Files\QGIS 3.10\apps\Python37\;E:\Program Files\QGIS 3.10\bin;E:\Program Files\QGIS 3.10\apps\qgis\bin;
需要注意的是,这两个路径最好放在
PATH
变量的最前面,否则其他路径下存在
Python
或者
QGIS
模块的话,会引起冲突。
PYTHONPATH变量配置
PYTHONPATH
变量的配置是为了让
Python
能够找到
PyQGIS
的各种依赖模块,保证正
常使用。
主要有几个路径需要配置(注意下面的路径的前提是将
QGIS
安装到默认位置,否则你
需要自行更改)
C:\Program Files\QGIS 3.14\bin;C:\Program Files\QGIS 3.14\apps\Python37\lib;C:\Program Files\QGIS 3.14\apps\qgis\bin;C:\Program Files\QGIS 3.14\apps\qgis\python;C:\Program Files\QGIS 3.14\apps\qgis\python\qgis;C:\Program Files\QGIS 3.14\apps\Python37\Lib\site-packages;C:\Program Files\QGIS 3.14\apps\Python37\DLLs;C:\Program Files\QGIS 3.14\apps\qgis-ltr\bin;C:\Program Files\QGIS 3.14\apps\Python37\Scripts
同样,PYTHONHOME设置如下,注意那个路径要设置到python37下,而不是qgis的bin下:
E:\Program Files\QGIS 3.10\apps\Python37\
环境配置检查
完成了上述的配置之后,通过从命令行窗口输入
python
,并
import qgis.core, import
qgis.user, import console……
这些操作,如果没有报错,就说明环境配置好了。
反之,如果输出找不到模块之类的错误,就应该继续添加相应路径到
PYTHONPATH
里面
按照上文所述的操作之后,基本上就可以开始编写
PyQGIS
程序了。但是编程过程
中,调试是一个非常方便的工具,为了使用调试器,建议大家还是使用一个
IDE
进行
代码编写吧。
本文用到的
IDE
为
Eclipse
,搭配
PyDev
插件来进行
PyQGIS
开发。具体配置步骤描述如
下。
PyDev插件安装与配置
首先下载并安装
Eclipse
,在
Eclipse
的菜单栏上选择
“帮助 > 安装新软件”
![](https://i-blog.csdnimg.cn/blog_migrate/80e7a9f399fe02cc8aa4f456c9b451ef.png)
直接选择
“Work with”
这一栏的下拉按钮,弹出
PyDev
的安装网址。总之,填上就行。
然后再弹出的资源里面选择
“PyDev for Eclipse”
就可以了,剩下的
“PyDev for Eclipse
Developer Resources”
以及
“PyDev Mylyn Integration”
选择性安装即可,不是必须的。
![](https://i-blog.csdnimg.cn/blog_migrate/60712b9697c7b305f47549cef27eae71.png)
需要注意的是,安装需要
Java 8
的支持,否则装上的
PyDev
插件不会出现在菜单栏
上。如果你的电脑里面没有
Java 8
,或者你装好
PyDev
以后没有显示相应的菜单栏,
你可以参照
Install
,得到官方的安装帮助
配置PyQGIS解释器
打开
Eclipse
,在菜单栏中选择
“窗口 > 首选项”
,打开选项配置窗口。
在选项配置窗口左边树形菜单依次选择
“PyDev > Interpreters > Python
Interpreter”
,在调出的
Python Interpreters
面板,单击
“New”
按钮,新建一个解释器,
并按照如下图所示填写
QGIS
安装路径下的
python.exe
位置
![](https://i-blog.csdnimg.cn/blog_migrate/d27e85f8161dc3e72bb9db4bedc37cb5.png)
配置QGIS桌面端
桌面端的配置主要包含
2
个部分,一个是安装插件,另一个是应用程序环境变量配置。
插件安装
要安装调试相关的插件,必须现在
QGIS
插件管理器中,打开
“
启用实验插件
”
这个选
项,否则在插件管理器中是看不到调试相关的插件的。
依次选择
QGIS
菜单栏
“Plugins > Manage and Install Plugins”
,在弹出的窗口中选
择
“Settings > Show also experimental plugins”
,如下图。
![](https://i-blog.csdnimg.cn/blog_migrate/2226bccf7f74ab8ff2560c79fe699a26.png)
接下来搜索并安装
Remote Debug
插件和
Reload
插件。其中,
Remote Debug
插件是
为了连接
Eclipse
进行远程调试的。而
Reload
插件则是用于重新加载插件,避免重启
QGIS
来达到重载的目的。
![](https://i-blog.csdnimg.cn/blog_migrate/bfb453e3f513c8b74a1e960e76bc7b91.png)
应用程序运行环境配置(重点)
最后,非常重要的一点是,要把
PyDev
插件中的
pysrc
路径加入到
QGIS
运行环境中。
在笔者的电脑上,这个路径是
E:\Program Files\eclipse\plugins\org.python.pydev.core_7.5.0.202001101138\pysrc
这个应用程序运行环境可以在
QGIS
桌面端的
“Settings > Options > System >
Environment”
中配置,如下图。
![](https://i-blog.csdnimg.cn/blog_migrate/c6ead3b9f79114f27ce01f704a1b4bbd.png)
联动调试
在QGIS3.10 打开Remote Debugger
![](https://i-blog.csdnimg.cn/blog_migrate/aa77d9a647815301353e11f5431ad48e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a27e04ed70bea8162829557f881e3e9d.png)
这时,切换到
QGIS
软件,选择
Remote?Debug
插件,并单击
connect
按钮,当
QGIS
窗
体弹出连接成功的消息通知,就表示连接上调试服务器了。
![](https://i-blog.csdnimg.cn/blog_migrate/8dc73142f38f6c2a6c5a425267b6ad7b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9fc2a6481030ad30986dd2ec729b3538.png)