Module compilé avec Swift 3.0 ne peut pas être importé dans Swift 2.3
C'est ce que je fais:
import BSTableViewReorder
et obtenez l'erreur suivante:
Module compilé avec Swift 3.0 ne peut pas être importé dans Swift 2.3
Que puis-je faire pour compiler? J'ai fait:
Edit > Convert -> Current Swift Syntax
À l'aide de Xcode 8 et macOS Sierra.
Pour les Deux: la cible et le projet que je les paramètres suivants de Use Legacy Swift Language Version
Le projet est mon pod pour cocoapods dépendances. Je viens de projet converti à Swift 3.0, mais il ne compile pas.
- Changement d'Utilisation de l'Héritage Swift Version de Langue ou PAS. Qui vous permettra d'utiliser swift 3 modules compilés.
- Changement pour quelle cible? Pour les deux?
- Essayez de la modifier pour les deux. Ce que je comprends, vous ne devez l'activer si vous souhaitez utiliser SWIFT 2.3
- Ok, je l'ai changé comme vous l'avez dit, mais... quand je tape
pod spec lint BSTableViewReorder.podspec
j'ai euThe spec did not pass validation, due to 49 errors and 6 warnings.
. Vous savez quel est le problème? Mon projet avec succès compile sur iphone et fonctionne. - Vous pouvez poster votre Podfile? êtes-vous sûr que vous ciblez IOS et swift 3 dans le podfile ?
- J'ai mis à jour la question.
- Laissez-nous continuer cette discussion dans le chat.
Vous devez vous connecter pour publier un commentaire.
Vous aurez besoin de changer la
Use Legacy Swift Language Version
àNO
- cela permet de s'assurer que votre projet va utiliser swift 3.Si vous souhaitez emporter votre projet comme un POD (pour cocoapods), vous devez ajouter un fichier nommé .swift-version (contenant 1 seule ligne, "3.0").
Ceci va dire cocoapods l'utilisation de la swift 3 compilateur.
Tout devrait fonctionner après cette modification.
Si vous utilisez un tiers des cadres de simplement mettre à jour une fois pour Xcode 8.1 et changer l'Utilisation de l'Héritage Swift Version de Langue ou PAS.
dans mon cas, le cadre développeurs ajouté cette ligne dans le code qui a été prévu pour la
Podfile
:comme vous pouvez le voir, ils sont par défaut à '2.3', qui a causé des problèmes parce que j'étais en train de 3.0. il suffit de retirer le
'2.3' # or
et en laissant le'3.0'
résolu le problème.Si les suggestions ci-dessus ne fonctionnent pas pour vous, essayez de supprimer ~/Bibliothèque Développeur/Xcode/DerivedData