[Qt-qml] [dilemma] choosing between two errors: "Foo is instantiated recursively" and "module Bar is not installed"

Flavius Aspra flavius.as at gmail.com
Wed May 18 19:27:41 CEST 2011


Hi

I'm trying to export a new qml item to the runtime by using
QDeclarativeExtensionPlugin. However something does not work as
expected, and I don't quite understand why.

Here is the code: https://github.com/OriginalCopy/JOC (it is a minimal POC)
and here is what happens when I try to load games/battlejet/Game.qml
either from within the application, or via qmlviewer:



QDeclarativeImportDatabase::addImportPath: "/usr/lib/qt/imports"
QDeclarativeImportDatabase::addImportPath:
"/home/flav/projects/joc-build/deployment"
plugins: (".")
//this last one is dumped out by main(), the following are done because
of QML_IMPORT_TRACE=1 ./gamingplatform



"/home/flav/projects/joc-build/deployment/games/battlejet/Game.qml"
QDeclarativeImportDatabase::addImportPath: "/usr/lib/qt/imports"
QDeclarativeImportDatabase::addImportPath:
"/home/flav/projects/joc-build/deployment"
QDeclarativeImports(file:///home/flav/projects/joc-build/deployment/games/battlejet/Game.qml)::addImport:
"." -1.-1 File as ""
QDeclarativeImports(file:///home/flav/projects/joc-build/deployment/games/battlejet/Game.qml)::addImport:
"QtQuick" 1.0 Library as ""
QDeclarativeImports(file:///home/flav/projects/joc-build/deployment/games/battlejet/Game.qml)::addImport:
"JOC" 0.1 Library as "JOC"
file:///home/flav/projects/joc-build/deployment/games/battlejet/Game.qml:2:1:
module "JOC" is not installed
     import JOC 0.1 as JOC
     ^



Now, from the example over here
http://doc.qt.nokia.com/main-snapshot/declarative-cppextensions-plugins.html
I understand on the qml side I don't need/I'm not able to load a plugin,
which is great, it sounds like a sane way of doing it.

So I've tried removing the "import JOC" line from the .qml file, now I get:

Game ist instantiated recursively

What is causing this and how could I fix it?

I'm using qt 4.7.2 (and cmake 2.8, if you try to reproduce it)

Thanks,
Flavius Aspra


More information about the Qt-qml mailing list