我正在尝试在我的CMake-based Qt项目中导入自己的模块。
qmldir.txt
module MyModule
MyModuleLabel 1.0 MyModuleLabel.qml根据文档,我需要设置QML2_IMPORT_PATH变量。
SET(QML2_IMPORT_PATH "/graphics")或者,我也可以使用QQmlEngine::addImportPath()。
我两种方法都试过了,但都没用。QQmlEngine::importPathList()不显示我的路径,因此编译器说:
module "MyModule" is not installed
我遗漏了什么?
发布于 2016-02-17 10:14:37
正如Frank所说,QML2_IMPORT_PATH环境变量仅在运行时相关,而不是我设置导入路径的地方。
这样做的方法是使用QQmlEngine::addImportPath(),如果您的导入路径是/foo/bar/modules/,并且您尝试使用import MyModule 1.0,则QML引擎将尝试在/foo/bar/modules/MyModule/中查找名为qmldir (没有扩展名)的文件。因此,文件的复杂路径应该是/foo/bar/modules/MyModule/qmldir。
https://stackoverflow.com/questions/35437048
复制相似问题