2015-05-23 4 views
7

Sto tentando di aggiungere Alamofire a un nuovo progetto XCode con Swift. Mi sento come se avessi provato di tutto."Nessun modulo di questo tipo 'Alamofire'" non riconosce il framework

Ogni volta che provo ad aggiungere

importazione Alamofire

ottengo "Nessuna tale modulo".

Ho provato a installarlo come indicato su https://github.com/Alamofire/Alamofire, Ho provato a farlo manualmente prima, poi Carthage e Cocoapods, ma con lo stesso risultato.

Ho provato a eliminare la cartella DerivedData e a ricostruire il progetto senza fortuna.

È un'installazione completamente pulita, ma non riconosce il framework. Ho cercato i suggerimenti nelle prime 10 ricerche di Google e qui su StackOverflow (Cannot install Alamofire in new Xcode Project. "No Such module Alamofire") Ecco alcuni screenshot dal mio ultimo attemp manuale:

General tap

Dependencies

+0

Alamofire è stato costruito come modulo? In caso contrario, dovrai includere l'intestazione del framework in un'intestazione di bridging. – MaddTheSane

+0

Grazie per la risposta. L'ho scaricato tramite: sottomodulo git aggiungi https://github.com/Alamofire/Alamofire.git alla directory del mio progetto. Devo ancora creare un'intestazione di bridging? Non ho trovato da nessuna parte, l'hanno già detto, ma potresti avere qualcosa ... – Fedtekansler

+0

Dato che il progetto stesso ha Swift (non lo sapevo), non dovresti avere bisogno di un'intestazione di bridging. L'errore "Nessun modulo" si verifica quando si scrive codice o quando lo si sta costruendo? Hai provato a rimuovere l'embed e collegare le opzioni binarie e le hai aggiunte di nuovo? – MaddTheSane

risposta

4

sembra che si sta utilizzando il modulo rilasciare direttamente i file sorgente nel progetto.

Se questo è il caso, non è necessario utilizzare l'intestazione import Alamofire o utilizzare Alamofire(dot) all'inizio di ogni metodo.

Basta usare il codice come di seguito omettendo il tag Alamofire.

request(.GET, "https://httpbin.org/get") 
+0

Non era il caso. Non ho provato a usarli direttamente ma con le istruzioni. Posso far funzionare tutto semplicemente trascinando tutti i file del framework nel mio progetto, e quindi non ho bisogno di importare ... Credo di doverlo affrontare in questo modo, quando lo si importa come framework non funzionerà – Fedtekansler

-1

Sono stato in grado di risolvere questo problema cambiando il mio Podfile. Inizialmente avevo il riferimento a Alamofire in un obiettivo:

Il problema è scomparso quando ho cambiato il podfile al seguente:

platform :ios, '8.0' 
use_frameworks! 

pod 'Alamofire', '~> 3.0' 
pod 'SwiftyJSON', :git => 'https://github.com/SwiftyJSON/SwiftyJSON.git' 

target 'xxxxxxx' do 
    pod 'GoogleMaps' 
end 

target 'xxxxxxxTests' do 
    pod 'GoogleMaps' 
end 
0

So che è risposta in ritardo, ma mi stava affrontando lo stesso problema con Xcode 8 Swift 3.0. Seguo this Alamofire link e ho aggiunto il framework manualmente. Funziona bene. Uno dei miei progetti si è bloccato sull'errore "no such module", ho pulito i dati derivati ​​(pulizia dei dati derivati ​​rimossi file di origine di Alamofire. L'ho aggiunto di nuovo nel mio progetto;)) e funziona come charm :).

istruzioni Seguito

  1. Scarica Alamofire
  2. Trascinare progetto Alamofire nella directory del progetto
  3. check alamofire destinazione di distribuzione stesso del vostro progetto
  4. Vai alle impostazioni generali del progetto, fare clic sul pulsante + sotto la sezione "Binari incorporati".
  5. Vedrete due diverse cartelle Alamofire.xcodeproj ciascuna con due versioni diverse di Alamofire.framework nidificate all'interno di una cartella Prodotti. Non importa quale cartella Prodotti tu scelga, ma è importante che tu scelga la parte superiore o inferiore di Alamofire.framework.
  6. Selezionare la parte superiore di Alamofire.framework per iOS e quella in basso per OS X.
  7. E questo è tutto! Alamofire.framework viene aggiunto automaticamente come dipendenza di destinazione, framework collegato e framework incorporato in una fase di creazione dei file di copia, che è tutto ciò che è necessario creare sul simulatore e su un dispositivo.