web-dev-qa-db-fra.com

Erreur Xcode et Cocoapods "No such module"

J'ai récemment effectué une mise à niveau vers Xcode 8 et un projet existant vers Swift 3. Après avoir rencontré divers problèmes avec Cocoapods, j'ai décidé de tout recommencer à zéro. Après avoir exécuté pod deintegrate et supprimé Podfile, Podfile.lock et [Project].xcworkspace, j’ai eu une page vierge en ce qui concerne Cocoapods.

J'ai ensuite pris les mesures suivantes:

  1. Ouverture d'un terminal à l'emplacement du projet et exécution de pod init, puis de pod install (à l'aide du fichier de souche pod créé par pod init).

    Cela a semblé être un succès, mais est venu avec les deux avertissements suivants:

[!] The `Xena [Debug]` target overrides the `ALWAYS_EMBED_Swift_STANDARD_LIBRARIES` build setting defined in `Pods/Target Support Files/Pods-Xena/Pods-Xena.debug.xcconfig'. This can lead to problems with the CocoaPods installation - Use the `$(inherited)` flag, or - Remove the build settings from the target.

[!] The `Xena [Release]` target overrides the `ALWAYS_EMBED_Swift_STANDARD_LIBRARIES` build setting defined in `Pods/Target Support Files/Pods-Xena/Pods-Xena.release.xcconfig'. This can lead to problems with the CocoaPods installation - Use the `$(inherited)` flag, or - Remove the build settings from the target.

À ce stade, l'ouverture de Xcode et la construction du projet génèrent l'erreur "Aucun module de ce type", qui est tout à fait attendue.

Suivez les instructions de cette question résout ce problème et relancez pod install est un succès.

  1. Xcode fermé, ajout des modules que j'utilise au fichier podfile (voir ci-dessous), le run pod install à nouveau. Selon la sortie du terminal, cela réussit.

  2. Xcode ouvert et construit le projet. Je reçois à nouveau l'erreur "No such module", en particulier No such module 'ReactiveCocoa'

    J'ai confirmé que le même problème se produisait avec SnapKit, Hue, KMPlaceholderTextView, KeychainSwift et Siren, en fonction de l'ordre des instructions d'importation. Pour une raison quelconque, aucun des modules de Google n'est concerné par ce problème.

Mon Podfile:

# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'Xena' do
  # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!

  # Pods for Xena
  pod 'ReactiveCocoa', :git => 'https://github.com/ReactiveCocoa/ReactiveCocoa.git'
  pod 'SnapKit', '~> 3.0.2'
  pod 'Hue', '~> 2.0.1'
  pod 'KMPlaceholderTextView', '~> 1.3.0'
  pod 'GooglePlacePicker'
  pod 'GooglePlaces'
  pod 'GoogleMaps'
  pod 'KeychainSwift', '~> 7.0'
  pod 'Siren'

  target 'XenaTests' do
    inherit! :search_paths
    # Pods for testing
  end

  target 'XenaUITests' do
    inherit! :search_paths
    # Pods for testing
  end

end
6
Jessica

Assurez-vous d’ouvrir le fichier .xcworkspace et non le fichier .xcodeproj.

Vous pouvez regarder plus loin dans ce post

Également sous: Cible> Général> Cadres et bibliothèques liés Assurez-vous que vos cadres sont là. Même Pods_Xena.framework est là

13
Munahil

Essayer:

Xcode -> Préférences -> Emplacement -> DerivedData

ouvrez le dossier DerivedData et déplacez-le dans la corbeille 

6
Adriana Carelli

Décommentez la ligne suivante pour définir une plate-forme globale pour votre projet.

platform :iOS, '9.0'

Décommenter la deuxième ligne de votre fichier pod vous aidera.