diff --git a/src/macdeployqt/shared/shared.cpp b/src/macdeployqt/shared/shared.cpp index 3e581a9db85ddca158280804ffa07234d5ea3a5b..f75f68e7e08bbdb28c0e2cfb7c987bda79d05a87 100644 --- a/src/macdeployqt/shared/shared.cpp +++ b/src/macdeployqt/shared/shared.cpp @@ -828,6 +828,12 @@ void deployPlugins(const QString &appBundlePath, DeploymentInfo deploymentInfo, void deployQmlImport(const QString &appBundlePath, const QString &importSourcePath, const QString &importName) { QString importDestinationPath = appBundlePath + "/Contents/Resources/qml/" + importName; + + // Skip already deployed imports. This can happen in cases like "QtQuick.Controls.Styles", + // where deploying QtQuick.Controls will also deploy the "Styles" sub-import. + if (QDir().exists(importDestinationPath)) + return; + recursiveCopyAndDeploy(appBundlePath, importSourcePath, importDestinationPath); }