安装QChart.js qml模块:找不到模块

时间:2015-12-13 15:07:02

标签: qt qml

我正在努力使用qml模块: https://github.com/jwintz/qchart.js

根据documentation

  • 我在$ PROJECT / qmlModules / jbQuick / Charts / *中放置了文件。
  • QML_IMPORT_PATH 添加到.pro文件中。

    QML_IMPORT_PATH + = ./qmlModules

  • 现在我正在尝试导入jbQuick.Charts 1.0,

但是QtCreator显示错误:找不到模块

enter image description here

更新

在清理构建并重新运行qmake之后,错误编辑器消失了,但在运行时我得到了:

  

qrc:/analyzer.qml:7模块“jbQuick.Charts”未安装

更新 正如评论中所提到的,我已经向main.cpp添加了导入路径:

engine.addImportPath(QStringLiteral("qmlModules"));

但错误仍然存​​在。

禁用阴影构建解决了问题。看起来我错过了部署步骤(qml模块文件的副本)

CONFIG += c++11 qml_debug
TEMPLATE = app

QT += qml quick widgets webkit webkitwidgets


HEADERS += VKApi.h \
    VKResponse.h \
    VKRequest.h \
    VKRequestManager.h \
    VKProfileAnalyzer.h \
    VKGroup.h \
    VKDayStats.h

SOURCES += main.cpp \
            VKApi.cpp \
    VKResponse.cpp \
    VKRequest.cpp \
    VKRequestManager.cpp \
    VKProfileAnalyzer.cpp \
    VKGroup.cpp \
    VKDayStats.cpp


RESOURCES += qml.qrc

QML_IMPORT_TRACE = 1

# Additional import path used to resolve QML modules in Qt Creator's code model
QML_IMPORT_PATH += ./qmlModules
QML2_IMPORT_PATH += ./qmlModules

# Default rules for deployment.
include(deployment.pri)

1 个答案:

答案 0 :(得分:1)

感谢您的所有意见。

总结本地安装QML模块所需的所有步骤(在项目目录中):

  1. 确保在* .pro
  2. 中定义了var QML_IMPORT_PATHS
      

    QML_IMPORT_PATH + = ./qmlModules

    1. 在main.cpp中添加导入路径(对于qmake项目)
    2. int main(int argc, char *argv[])
      {
          QApplication app(argc, argv);
      
      
          QQmlApplicationEngine engine;
          engine.addImportPath(QStringLiteral("qmlModules"));
          engine.load(QUrl(QStringLiteral("qrc:/analyzer.qml")));
      
          return app.exec();
      }
      
      1. 确保正确部署插件的文件。我使用了来自here
      2. 的解决方案
        copydata.commands = $(COPY_DIR) $$PWD/qmlModules $$OUT_PWD
        first.depends = $(first) copydata
        export(first.depends)
        export(copydata.commands)
        QMAKE_EXTRA_TARGETS += first copydata