Qt 未找到自定义QML模块
我有一个QML应用程序。我已经创建了自己的QML模块。调用了Qt 未找到自定义QML模块,qt,qml,qt5,Qt,Qml,Qt5,我有一个QML应用程序。我已经创建了自己的QML模块。调用了MyCustomModule。模块具有相应的qmldir文件,该文件已注册到相应的my_custom_module.qrc文件中。我还使用addImportPath(“qrc:///my_custom_module"); C++中的应用程序启动。我正在使用CMake而不是QMake 无论何时导入MyCustomModuleQtCreator都会告诉我QML模块未找到,但当我构建应用程序时,构建过程中不会出现任何问题并运行 我遗漏了什么吗
MyCustomModule
。模块具有相应的qmldir
文件,该文件已注册到相应的my_custom_module.qrc
文件中。我还使用addImportPath(“qrc:///my_custom_module");代码> C++中的应用程序启动。我正在使用CMake而不是QMake
无论何时导入MyCustomModule
QtCreator都会告诉我QML模块未找到
,但当我构建应用程序时,构建过程中不会出现任何问题并运行
我遗漏了什么吗?我的问题是我的CMake文件中缺少了QML\u导入路径。例如:
# 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\u CURRENT\u SOURCE\u DIR}/path/to/your/module
应该指向模块所在的文件夹,而不是模块文件夹本身。如果你有这样一条路径:
/path/to/your/module/MyCustomModule
,CMake应该包含路径/path/to/your/module
您最好提供一些源代码,而不是解释它。我认为在这种情况下,源代码只是一条死胡同,只会转移人们对真实问题的注意力。正如我所说的,代码很好,因为它构建并运行。另一方面,我找到了将其作为答案添加的解决方案。