Qt Creator 无法理解有效的 QML 模块导入

问题描述 投票:0回答:1

我有一个 CMake (3.22.1) 项目,并且添加了我的 QML (Qt SDK 6.5.5) 模块,如下所示:

qt_add_qml_module(MyQmlModule
    URI MyQmlModule
    VERSION 1.0
    RESOURCE_PREFIX /
    QML_FILES ${QML_SOURCE_FILES}
)

虽然项目构建并运行得很好,但

Qt Creator (13.0.0, 14.0.0)
不理解导入,这让我很烦恼:

enter image description here

我需要这个导入,因为否则我的单例 QML 对象将无法工作:

set_source_files_properties(MySingleton.qml PROPERTIES QT_QML_SINGLETON_TYPE TRUE)

错误消息表明

QML_IMPORT_PATH
应该位于
CMakeCache.txt
中,但不确定这是否与此特定情况相关,因为该项目实际上有效。

有没有办法让

Qt Creator
理解我的导入,或者这只是一个错误?

cmake qml qt-creator qt6 ubuntu-22.04
1个回答
0
投票

将这两行放在主 CMakeLists 中可能会解决问题:

set(QT_QML_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/qml" CACHE PATH "Install path for QML" FORCE)
set(QML_IMPORT_PATH ${CMAKE_BINARY_DIR}/qml CACHE STRING "Extra QML Import Paths" FORCE)

这看起来像是现金错误,否则该项目一开始就不会运行。设置QML的路径,将其存储为现金,然后从指定路径导入。

© www.soinside.com 2019 - 2024. All rights reserved.