Modules hérités
Les modules hérités sont des modules dont le fichier de spécification qmldir ne contient pas de directive d’identifiant de module. Un module hérité peut soit être installé dans le chemin d’importation QML (en tant que module hérité installé), soit être importé par les clients via une importation relative (en tant que module hérité localisé). Il est conseillé aux clients d'éviter d'utiliser des modules hérités dans la mesure du possible. Les développeurs de modules doivent veiller à créer des modules identifiés et non des modules hérités.
Modules hérités installés
Un module installé et non identifié se voit automatiquement attribuer un identifiant par le moteur QML. Cet identifiant défini implicitement correspond au chemin d’installation du module (par rapport au chemin d’importation QML), les caractères de séparation de répertoires étant remplacés par des points.
Un module non identifié installé dans le chemin d’importation QML présente les caractéristiques suivantes :
- il peut être importé par les clients via l'identifiant de module implicite
- les clients doivent spécifier une version lors de l’importation du module
- les conflits de noms de types sont résolus de manière arbitraire par le moteur QML, et il n’est pas garanti que la méthode de résolution des conflits reste la même d’une version de QML à l’autre
- d’autres modules hérités peuvent modifier ou remplacer les définitions de types fournies par le module hérité installé
Modules hérités localisés
Un module non identifié qui est importé via une instruction d’importation avec un chemin d’accès relatif est chargé par le moteur en tant que module hérité localisé. Les règles suivantes s’appliquent aux modules hérités localisés :
- il peut être importé par les clients via un chemin d’importation relatif
- les clients ne sont pas tenus de spécifier une version lors de l'importation du module
- si aucune version d’importation n’est fournie par le client dans l’instruction d’importation, le moteur QML ne donne aucune garantie quant à la version de la définition d’un nom de type donné qui sera importée
- les conflits de noms de types sont résolus de manière arbitraire par le moteur QML, et il n’est pas garanti que la manière dont les conflits sont résolus reste la même d’une version à l’autre de QML
- d’autres modules hérités peuvent modifier ou remplacer les définitions de types fournies par le module hérité localisé
Un module hérité localisé peut résider sur le système de fichiers local ou sur le réseau et peut être référencé par une URL spécifiant le chemin d’accès du système de fichiers ou l’URL réseau.
Voir également Modernisation des modules QML et Portage des modules QML vers CMake.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.