⚠️ Forum Maintenance: Feb 6th, 8am - 14pm (UTC+2)

Problems with .qmltype file generation

  • Hello :]

    I have a little problem when I try to generate .qmltype files for my plugins.
    For example, I have a plugin named IzLibrary.

    This plugin resides in its import folder, in it I have:

    • qmldir file
    • IzLibraryPlugin.dll file
    • generated izlibrary.qmltypes file

    Whole contents of qmldir file are:

    // file start
    module IzLibrary
    plugin IzLibraryPlugin
    typeinfo izlibrary.qmltypes
    classname IzQMLComponents
    IzToast 1.0 qrc:///src/JS/IzToast.js
    IzMark 1.0 qrc:///src/JS/IzMark.js
    IzBusy 1.0 qrc:///src/JS/IzBusy.js
    // file end

    To generate izlibrary.qmltypes file I use:

    qmlplugindump IzLibrary 1.0 ./ > ./IzLibrary/izlibrary.qmltypes

    This command generates, what I think is, a proper .qmltypes file:

    import QtQuick.tooling 1.2
    // This file describes the plugin-supplied types contained in the library.
    // It is used for QML tooling purposes only.
    // This file was auto-generated by:
    // 'qmlplugindump IzLibrary 1.0 ./'
    Module {
        dependencies: []
        Component {
            name: "QDoubleValidator"
            prototype: "QValidator"
            exports: ["IzDoubleValidator 1.0"]
            exportMetaObjectRevisions: [0]
            [~here be 4000 more lines of similar stuff~]

    But under QtCreator 4.6, under General Messages, I get:

    Warnings while parsing QML type information of C:/Users/jakubn/Documents/projekty/qt-projects/deploy/plugins/release/5.9.4/msvc/x86/IzLibrary:
    Failed to parse "C:/Users/jakubn/Documents/projekty/qt-projects/deploy/plugins/release/5.9.4/msvc/x86/IzLibrary/izlibrary.qmltypes".
    Error: 1:1: Expected token "numeric literal".
    QML module does not contain information about components contained in plugins.

    Is there something I did wrong?

    For testing, I pasted contents from qts docs into the izlibrary.qmltypes but error stays the same.

  • The reason for this error was improper encoding of the .qmltypes file.
    When I manually resaved it in UTF-8 problem went away.

Log in to reply