Cocoapods + 'x'の基本モジュールをロードできません


89

XCode 7、Swift 2.0、iOS 9を実行しています。

Cocoapodsを使用してプロジェクトにAlamofireをインストールしたい。私は次のことを行いました:

gem install cocoapods

pod setup

pod init

Podfileを更新:

# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
use_frameworks!

target 'JSONeg' do

  pod 'Alamofire', :branch => 'swift-2'

end

次に、ポッドをインストールしました。

pod install

そして、私はViewController.swiftに以下を追加しました

import Alamofire

これにより、次のエラーが発生します。

Cannot load underlying module for 'Alamofire'

別のポッドでテストしたところ、同じエラーが発生したため、Cocoapodのインストールに問題があると思います。どんな助けでも大歓迎です。


必要なフレームワークをインポートしたことを確認します
user3722523

回答:


209

これはXCodeのバグのようです。私にも同じ問題があり、この質問に対する別の回答のコメントに記載されているように、プロジェクトを構築するとエラーがなくなりました。


4
私はプロジェクトの開始時にほとんどここに来ます...バディに感謝します
SoliQuiD

2
いまいましい回避策はまだ機能します。XCodeはオープンソースである必要があります。
Siddharth


14

これは私のために働きました:

  1. プロジェクトを閉じます
  2. ターミナルでプロジェクトディレクトリに移動します
  3. このコマンドを追加します:pod update
  4. その後、すべてのポッドが更新されます。プロジェクトを実行するだけ

10

SWIFTの 'x'の基本モジュールをロードできません:

問題を修正する方法:

step:1新しいプロジェクトを作成し、ポッドをインストールせずに正常にビルドして実行します。

ステップ:2プロジェクトを正常にビルドして実行した後、今度はポッドをインストールしてから、 realm、alamofire、chartsなどインポートしてみてください。

失敗した場合 ->新しいプロジェクト-> cocoapodsを介して(レルム、alamofire、チャートなど)を最初にビルドせずに追加-> Xcodeワークスペースを開く->ビルドして実行

成功例 ->新しいプロジェクト->ビルドと実行-> cocoapods経由で(レルム、アラモファイア、チャートなど)を追加-> Xcodeワークスペースを開く->ビルドと再実行=成功


時間の99%が既存のプロジェクトで発生している場合、このエラーが表示されるたびに「新しいプロジェクトを開始する」ことを検討することはできません。「ポッドアップデート」を
試してみてはどうでしょう

9

Alamofireポッドをインストールしたら。

Step.1 your_project_name.xcworkspaceファイルをダブルクリックしてプロジェクトを開きます。

Step.2プロジェクト設定->ビルドフェーズ->バイナリをライブラリにリンク->フレームワーク「Alamofire.framework」を追加します。

それでおしまい!!

これでモジュールをインポートできます


8

私の場合に何が役に立ったか:

1)プロジェクトとXCodeを閉じます

2)端末の繰り返しコマンド

> pod install

3)プロジェクトを開く

(それでも問題が解決しない場合は、再インストールする前にPod /フォルダーを削除してください)


1
また、Pod/再インストールする前にフォルダを削除してください
nikans

7

私はこれらのソリューションをすべて試しました:ポッドの再構築、クリーニング、再インストールなどですが、私の場合、ARのために「アクティブアーキテクチャのみを構築する」設定を「いいえ」に変更する問題がありました私が使用していたライブラリ。「はい」に戻し、修正しました。これが誰かを助けることを願っています。


確かに、それが主な問題でした
。command

YESからNOに設定する必要がありました。変だ。
ムンディ

7

製品>(Opt Click)Clean Build Folderを実行する必要がありました...その後、再度実行すると問題は解決しました。


5

Xcodeバージョン8.3.1(8E1000a)を使用しています。どういうわけか、SwiftCloudantモジュールをポッドインストールしたいときにこの問題が発生します。おそらく、ポッドインストールを実行するときにXcodeを閉じませんでした。

[ターゲット]> [全般]タブでSwiftCloudant.frameworkを手動で追加することでこれを修正しました。

ターゲット>一般>リンクされたフレームワークとライブラリ


他のすべてが失敗した後、これは実際に機能しました。どうもありがとう。
AmirZ

4

私の場合、それは別の理由でした、それは私のターゲットビルド設定のその他の迅速なフラグでした、継承されたフラグを上部に追加する必要がありました。


3

Cocoapodsの最新バージョンがあるかどうかを確認しましたか?すべてのgemを更新することで更新できます。

sudo gem update

または単にCocoapodsを再インストールします:

 [sudo] gem install cocoapods

それでも解決しない場合は、CocoaPods-Xcode-betaを使用してiOS 9 / Swift 2用にビルドしてください。

は、Xcode環境設定の[場所]タブでコマンドラインツールのバージョンを簡単に変更し、[コマンドラインツール]をXcode 7.0に変更する方法を示しています。


はい、それは最新のビルドでした。私は問題を理解しました。私はプロジェクトを構築しましたが、突然、うまくいきました。

それでは、他の人が問題に遭遇したときに他の人が問題を解決できるように、考え出した解決策を使用して独自の質問に答えてください
Glenn

3

手順に従ってください:

1.ポッドをインストールする2.workSpaceを開く3.アプリケーションを実行/ビルドする4.次に、フレームワークをインポートできる


2

基になるモジュールを読み込めませんでした

  1. フレームワークのパスを確認してください:Build Settings -> Framework Search Paths
  2. フレームワークへのパスにスペースが含まれていないことを確認してください。
  3. パスに変数が含まれている場合は、で変数名を検索して、変数の値を見つけますBuild Settings
  4. 変数の値にスペースが含まれていないことを確認してください。
  5. パスにスペースが含まれている場合は、スペースが含まれているディレクトリの名前を変更します。
  6. プロジェクトをクリーンアップしてビルドします。

要約すると、<Project Root>パスにスペースが含まれていないことを確認してください。それ以外の場合は、dirスペースを含むの名前を変更してから、プロジェクトをクリーンアップしてビルドします。

例:これがプロジェクトのルートの場合:/Users/handsomeboy/ios app/Fancy App/、スペースがあるフォルダーの名前を変更します。スペースを取り除くための一つの方法:変更'ios app''ios_app'


2

リンクされているフレームワークでに設定GCC_SYMBOLS_PRIVATE_EXTERN(ターゲット設定で「デフォルトでは非表示のシンボル」として表示)を設定するYESと、このエラーを取り除くのに役立ちました。私はこれを見つけるために2日間費やしました。誰かの役に立つことを願っています:)


2

このURLで:https : //github.com/Alamofire/Alamofire/issues/441

ユーザーの一人がこれを書いた:

クリーンアップが機能しなかった、ポッドからの再インストールが機能しなかった、カルタゴからのインストールが機能しなかった、手動インストールが機能しなかった。Build for Testingの後、ようやく動作しました。

だから私はこれを試しました(xcodeバージョン9.2(9C40b)):

ここに画像の説明を入力してください

うまくいきました。エラーが発生しました。

注:私のポッドはAlamofireではなかったので、すべてのポッドで機能すると思います。


2

別の可能なシナリオ:テストターゲットが親ターゲットのスコープ内で定義されていることを確認してください(スコープ外ではない)

例えば

target 'MyApp' do
  pod 'GoogleAnalytics', '~> 3.1'

  target 'MyAppTests' do
    inherit! :search_paths
    pod 'OCMock', '~> 2.0.1'
  end
end

代わりに次のような場合:

target 'MyApp' do
  pod 'GoogleAnalytics', '~> 3.1'
end

target 'MyAppTests' do
  inherit! :search_paths
  pod 'OCMock', '~> 2.0.1'
end

その後、このエラーも表示されます。


1

私にとって同じ問題。ポッドファイルからAlamofireのバージョンを削除して解決しました。

ポッドファイル

# Uncomment this line to define a global platform for your project
platform :ios, "8.0"

# Uncomment this line if you're using Swift
use_frameworks!

target 'GettingSwift' do
 pod 'Alamofire'
end

target 'GettingSwiftTests' do
end

1

私の場合:

1.コメント行//import Pod_Module

2.プロジェクトに移動->クリーン

アップまたはショートカットキーを使用(Command + Shift + K)2.プロジェクトを閉じます

3.ターミナルでプロジェクトディレクトリに移動します

4.実行> pod install

5. .xcworkspaceファイルを開き、作ろう!

6.のコメント行import Pod_Module


0

CocoaPodsをインストールするときは、必ず#を削除してiOS 9.0を指定してください。そのため、# platform :ios, '9.0'ただでなければなりませんplatform :ios, '9.0'、エラー表示された場合、単純にビルドして実行、もう一度、その後。ビルドして実行した後、エラーは返されません。

また、コンピュータに複数のバージョンのXcodeがインストールされている場合にも発生する可能性があります。Xcodeのすべてのバージョンを最初に終了します(閉じるだけではありません)。



0

ポッドが正常にインストールされていることを確認した場合、エラーは、ポッドをインストールする前に残っていた派生データに関連している可能性があります。に移動すると、派生データをクリアできますFile -> Workspace Settings... -> Derived Data。アプリに関連付けられている派生データフォルダーを削除してビルドをクリーンアップすると、問題が解決します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.