はじめに
React Nativeでアプリを開発している際、Expoを使用してeas build --platform ios
コマンドを実行したところ、
下記のようにRun fastlaneがエラーが出る場合がないでしょうか?
この記事ではその時の対処法をご紹介します!
エラー内容
eas build --platform ios
を実行したときのエラー文です。
Run fastlaneの部分でエラーが発生しているようです。
Build failed: The "Run fastlane" step failed with an unknown error. Refer to "Xcode Logs" below for additional, more detailed logs.
エラーが発生したときの状況
- Expoのバージョンを45 => 47にアップデートしたときにiosのbuildでエラーが発生した
- androidの方はbuildできる
-
expo start でアプリは問題なく起動する
解決方法 (ライブラリのバージョンを更新)
私のプロジェクトの場合は、
@config-plugins/react-native-branch
のバージョンを2.0.0 => 最新の5.0.0にアップデートすることで解決しました!下記は最新のバージョンに更新するときの実行コマンドです。
% expo install @config-plugins/react-native-branch
原因の特定方法
ExpoにログインしてiOS App Store buildの画面を開きます。
下の方にRun fastlaneの項目があるのでクリックして詳細を開きます。
スクロールして中身を確認すると❌と表示されてエラーになっている部分があるので付近を確認すると@config-plugins/react-native-branch
のライブラリあたりでエラーが出ていることが確認できます。
› Compiling @config-plugins/react-native-branch Pods/ExpoAdapterBranch » BranchAppDelegate.swift
❌ (node_modules/@config-plugins/react-native-branch/ios/ExpoAdapterBranch/BranchAppDelegate.swift:1:8)
> 1 | import ExpoModulesCore
| ^ compiling for iOS 12.0, but module 'ExpoModulesCore' has a minimum deployment target of iOS 13.0: /Users/expo/Library/Developer/Xcode/DerivedData/IT-hfhagyzjhtdmvbfuwgocyplvlpbf/Build/Intermediates.noindex/ArchiveIntermediates/IT/BuildProductsPath/Release-iphoneos/ExpoModulesCore/ExpoModulesCore.swiftmodule/arm64-apple-ios.swiftmodule
2 | import RNBranch
3 |
4 | public class BranchAppDelegate: ExpoAppDelegateSubscriber {
そのため、@config-plugins/react-native-branch
のバージョンが適切でないと仮定して、ライブラリのバージョンを最新に更新したら、無事にbuildが成功しました!
まとめ
いろいろ記事を検索したり、issueを見たりしてみましたが、自分のプロジェクトに当てはまる解決方法が見つかりませんでした。
しかし、Expoの管理画面で実際のエラー内容をよく見てみると原因となっているライブラリを特定することができました。
コメント