I have just started out with React Native. I was following the React Native CLI Quickstart from the official documentation. That does also mean I am up to date with React Native version 0.61.2.
Since then I have done some basic UI, checking with the result in the iPhone simulator. It works when running react-native run-ios
, not really touching the ios/Podfile too much.
My problem is running pod install inside my ios/ folder always results in an error! This becomes a problem now where I need to install additional packages. But it is already failing with default Podfile!
Error message:
[!] Invalid `Podfile` file: undefined method `[]' for nil:NilClass.
# from /Users/marcel/Projekte/WerBinIch/ios/Podfile:43
# -------------------------------------------
#
> use_native_modules!
# end
# -------------------------------------------
ios/Podfile
platform :ios, '9.0'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
target 'WerBinIch' do
# Pods for WerBinIch
pod 'FBLazyVector', :path => "../node_modules/react-native/Libraries/FBLazyVector"
pod 'FBReactNativeSpec', :path => "../node_modules/react-native/Libraries/FBReactNativeSpec"
pod 'RCTRequired', :path => "../node_modules/react-native/Libraries/RCTRequired"
pod 'RCTTypeSafety', :path => "../node_modules/react-native/Libraries/TypeSafety"
pod 'React', :path => '../node_modules/react-native/'
pod 'React-Core', :path => '../node_modules/react-native/'
pod 'React-CoreModules', :path => '../node_modules/react-native/React/CoreModules'
pod 'React-Core/DevSupport', :path => '../node_modules/react-native/'
pod 'React-RCTActionSheet', :path => '../node_modules/react-native/Libraries/ActionSheetIOS'
pod 'React-RCTAnimation', :path => '../node_modules/react-native/Libraries/NativeAnimation'
pod 'React-RCTBlob', :path => '../node_modules/react-native/Libraries/Blob'
pod 'React-RCTImage', :path => '../node_modules/react-native/Libraries/Image'
pod 'React-RCTLinking', :path => '../node_modules/react-native/Libraries/LinkingIOS'
pod 'React-RCTNetwork', :path => '../node_modules/react-native/Libraries/Network'
pod 'React-RCTSettings', :path => '../node_modules/react-native/Libraries/Settings'
pod 'React-RCTText', :path => '../node_modules/react-native/Libraries/Text'
pod 'React-RCTVibration', :path => '../node_modules/react-native/Libraries/Vibration'
pod 'React-Core/RCTWebSocket', :path => '../node_modules/react-native/'
pod 'React-cxxreact', :path => '../node_modules/react-native/ReactCommon/cxxreact'
pod 'React-jsi', :path => '../node_modules/react-native/ReactCommon/jsi'
pod 'React-jsiexecutor', :path => '../node_modules/react-native/ReactCommon/jsiexecutor'
pod 'React-jsinspector', :path => '../node_modules/react-native/ReactCommon/jsinspector'
pod 'ReactCommon/jscallinvoker', :path => "../node_modules/react-native/ReactCommon"
pod 'ReactCommon/turbomodule/core', :path => "../node_modules/react-native/ReactCommon"
pod 'Yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec'
pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec'
target 'WerBinIchTests' do
inherit! :search_paths
# Pods for testing
end
use_native_modules!
end
I have no idea how to deal with this! I have no idea how the Podfile and the thing with the xcode files really work! I was trying to delete folders accomplishing a reset. More than that I have no idea what the error message could mean.
This error happens when you cd to ios folder and run "pod install" and is because you added a new react native module by
npm -i package
instead of using yarn
yarn add package
To solve this problem, just go to the main react native project folder where package.json is and run the command below again
yarn cache clean
yarn add package
Then try cd to the ios folder and run "pod install" and there will no more errors. Hope this can help the other people who are also facing the same problem.
This answer solve my problem well :
react-native ios Podfile issue with "use_native_modules!"
Here is the correct answer:
1 - Your POD File should contain this line on top
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
2 - Make sure your package.json and node_module folders has this module installed
cli-platform-ios/native_modules
3 - If you didn't find after you run yarn install
- means you have old cache node_modules in your machine and you need to clean it before reinstalling the package again.
4 - Clean cache
$ yarn cache clean
5 - Make sure you have this file react-native.config.js
and its configuration is VALID - and it doesn't have non-existing NPM packages - this step is LAST AND MOSTLY THE CAUSE of the error
Example of my react-native.config.js
module.exports = {
project: {
ios: {},
android: {},
},
assets: ['./assets/fonts/']
dependencies: {}, // make sure this deps are all valid installed packages or empty if you don't need it
};
6 - Install node packages yarn install
and your pods should work now!
$ pod install --repo-update
HAPPY coding!
after half of a day and try every solution, finally, I replace both
react-native
@react-native-community
folder from another RN 0.63 Project to node_modules and it's solved. maybe my cache was not deleted or replaced correctly.
In my case I accidentally created a package.json in my iOS folder. This seemed to confuse the react native build. I deleted the package.json in my ios folder, leaving the package.json in the root project folder and things worked.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With