Пользовательский модуль QML не найден - PullRequest
0 голосов
/ 28 мая 2019

У меня есть приложение QML.Я создал свой собственный модуль QML.называется MyCustomModule.Модуль имеет соответствующий файл qmldir, который зарегистрирован в соответствующем файле my_custom_module.qrc.Я также добавляю путь импорта с addImportPath("qrc:///my_custom_module"); при запуске приложения в C ++.Я использую CMake вместо QMake.

Куда бы я ни импортировал MyCustomModule QtCreator сообщает мне QML module not found, но когда я собираю приложение, оно строится без проблем и запускается.

Я пропускаючто-то?

1 Ответ

0 голосов
/ 30 мая 2019

Моя проблема заключалась в том, что мне не хватало QML_IMPORT_PATH из моего файла CMake.Пример:

# Make Qt Creator aware of where the QML modules live
set (_QML_IMPORT_PATHS "")

## Add new module paths here.
list (APPEND _QML_IMPORT_PATHS ${CMAKE_CURRENT_SOURCE_DIR}/path/to/your/module)

set (
    QML_IMPORT_PATH
    ${_QML_IMPORT_PATHS}
    CACHE
    STRING
    "Path used to locate CMake modules by Qt Creator"
    FORCE
)

Важное замечание: ${CMAKE_CURRENT_SOURCE_DIR}/path/to/your/module должен указывать на папку, в которой находится модуль, а не на саму папку модуля.Так что если у вас есть такой путь: /path/to/your/module/MyCustomModule, CMake должен содержать путь /path/to/your/module.

...