2 votos

Plugin no funciona después de la construcción a través de Plugin Builder en QGIS

He estado tratando de construir un plugin a través de Plugin Builder 3 y me he enfrentado a este problema.

Me he enfrentado al pyrcc5 problema pero pude solucionarlo a través de este enlace: Corrección de "No se ha encontrado el compilador de recursos pyrcc5"

Este es el error de Python:

Couldn't load plugin split_layer' due to an error when calling its classFactory() method

ModuleNotFoundError: No module named 'split_layer.resources'
Traceback (most recent call last):
  File "C:/PROGRA-1/QGIS3~1.3/apps/qgis/./python\qgis\utils.py", line 334, in _startPlugin
    plugins [packageName] = package.classFactory (iface)
  File "C:/Users/pabla/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\split_layer\ _init_ .py", line 35, in classFactory
    from .split_layer import Split_Layer
  File "C:/PROGRA~1/QGIS3~1.8/apps/qgis/./pychon\qgis\utils.py", line 737, in _import
    mod = _builtin_import (name, globals, locals, fromlist, level)
  File "C:/Users/pabla/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\splic_layer\splic_layer.py", line 26, in
    from .resources import *
  File "C:/PROGRA~1/QGIS3~1.8/apps/qgis/./pychon\qgis\utils.py", line 737, in _import
    mod = _builtin_import (name, globals, locals, fromlist, level)
ModuleNotFoundError: No module named 'split_layer.resources'

¿Alguien puede ayudarme a solucionar este error?

2voto

nitinsavant Puntos 6

Mientras construyes un plugin para QGIS utilizando Plugin Builder, si obtienes ModuleNotFoundError: No module named '... .resources' error después de ejecutar Makefile primero debe comprobar si resources.py existe en la carpeta (carpeta fuente) creada por Plugin Builder. Si es así, copie ese archivo en su carpeta de plugins en la carpeta de plugins de QGIS (carpeta de destino).

Si no hay resources.py en la carpeta de fuentes y, a continuación, ejecute el siguiente código para crear resources.py de resources.qrc .

pyrcc5 -o resources.py resources.qrc

Y copia resources.py en la carpeta de destino o ejecute Makefile otra vez.

Nota: Puede copiar todos los archivos del plugin en la carpeta de destino manualmente sin ejecutar Makefile . Pero aún así, necesitará resources.py archivo. Por lo tanto, debe generarlo mediante pyrcc5 .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X