MODIFIER : la solution pour moi était d'utiliser mon précédent PodFile avant la mise à niveau, l'application ios fonctionne maintenant. voir le PodFile qui fonctionne pour moi ci-dessous
J'ai mis à niveau une application RN vers la version 0.59.1 (elle était à 0.57.8) en utilisant react-native upgrade
, Android fonctionne, mais pour la version ios, je suis bloqué avec l'installation de pod, ce qui entraîne cette erreur:
[!] No podspec found for `FBLazyVector` in `../node_modules/react-native/Libraries/FBLazyVector
presque toutes les dépendances réactives donnent des erreurs similaires, je sais qu'en commentant les pods un par un et en exécutant pod install
voici mon Podfile:
# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
target 'MdcIos' do
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'
pod 'GoogleAnalytics'
pod 'Firebase/Core'
pod 'Firebase/Messaging'
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
# use_frameworks!
# Pods for MdcIos
pod 'RNLanguages', :path => '../node_modules/react-native-languages'
pod 'RNIap', :path => '../node_modules/react-native-iap'
pod 'Firebase/Core'
pod 'Firebase/AdMob'
pod 'Fabric', '~> 1.9.0'
pod 'Crashlytics', '~> 3.12.0'
pod 'RNBackgroundFetch', :path => '../node_modules/react-native-background-fetch'
pod 'react-native-orientation', :path => '../node_modules/react-native-orientation'
pod 'rn-fetch-blob', :path => '../node_modules/rn-fetch-blob'
pod 'RNReanimated', :path => '../node_modules/react-native-reanimated'
pod 'RNScreens', :path => '../node_modules/react-native-screens'
pod 'RNZipArchive', :path => '../node_modules/react-native-Zip-archive'
pod 'RNGestureHandler', :path => '../node_modules/react-native-gesture-handler'
pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons'
pod 'react-native-netinfo', :path => '../node_modules/@react-native-community/netinfo'
pod 'RNCAsyncStorage', :path => '../node_modules/@react-native-community/async-storage'
end
post_install do |installer|
installer.pods_project.targets.each do |target|
if target.name == 'react-native-google-maps'
target.build_configurations.each do |config|
config.build_settings['CLANG_ENABLE_MODULES'] = 'No'
end
end
if target.name == "React"
target.remove_from_project
end
if target.name == 'yoga'
target.remove_from_project
target.build_configurations.each do |config|
config.build_settings['GCC_TREAT_WARNINGS_AS_ERRORS'] = 'NO'
config.build_settings['GCC_WARN_64_TO_32_BIT_CONVERSION'] = 'NO'
end
end
end
end
et package.json:
{
"name": "MdcIos",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest",
"build:ios": "react-native bundle --entry-file='index.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios' --assets-dest='./ios/'",
"build:Android": "react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res --verbose"
},
"dependencies": {
"@react-native-community/async-storage": "1.6.1",
"@react-native-community/netinfo": "4.4.0",
"abortcontroller-polyfill": "^1.4.0",
"buffer": "5.2.1",
"i18next": "14.0.1",
"jetifier": "^1.6.4",
"moment": "2.24.0",
"react": "16.8.3",
"react-i18next": "9.0.8",
"react-native": "0.59.1",
"react-native-Android-open-settings": "1.3.0",
"react-native-app-store-review": "0.0.3",
"react-native-appstore-version-checker": "2.7.2",
"react-native-background-fetch": "2.6.0",
"react-native-bottomsheet": "1.9.5",
"react-native-communications": "2.2.1",
"react-native-countdown-component": "2.4.0",
"react-native-device-info": "0.24.3",
"react-native-elements": "1.2.6",
"react-native-firebase": "5.2.1",
"react-native-gesture-handler": "1.2.1",
"react-native-iap": "2.4.0-beta13",
"react-native-image-picker": "0.27.2",
"react-native-image-zoom-viewer": "2.2.26",
"react-native-keyboard-aware-scroll-view": "0.8.0",
"react-native-languages": "3.0.2",
"react-native-loading-spinner-overlay": "1.0.1",
"react-native-maps": "github:jerolimov/react-native-maps#fix-rn59rc-compile-issues",
"react-native-material-menu": "0.4.2",
"react-native-orientation": "3.1.3",
"react-native-permissions": "1.2.0",
"react-native-photo-upload": "1.3.0",
"react-native-picker-select": "6.1.0",
"react-native-progress": "3.6.0",
"react-native-reanimated": "1.2.0",
"react-native-screens": "2.0.0-alpha.1",
"react-native-simple-radio-button": "2.7.3",
"react-native-vector-icons": "6.6.0",
"react-native-Zip-archive": "5.0.0",
"react-navigation": "4.0.0",
"react-navigation-stack": "1.9.4",
"react-redux": "6.0.0",
"react-timer-mixin": "0.13.4",
"redux": "4.0.4",
"redux-persist": "6.0.0",
"rn-fetch-blob": "0.10.15"
},
"devDependencies": {
"@react-native-community/cli-platform-ios": "3.0.0",
"babel-jest": "23.6.0",
"jest": "23.6.0",
"metro-react-native-babel-preset": "0.49.1",
"react-test-renderer": "16.6.1"
},
"jest": {
"preset": "react-native",
"transform": {
"^.+\\.(js)$": "<rootDir>/node_modules/react-native/jest/preprocessor.js"
}
}
}
MERCI!
J'étais confronté à la même erreur après la mise à niveau de mon projet 0.59.0
à 0.61.4
. Le projet fonctionne correctement après la mise à jour de la version native de React. mais certains packages ne fonctionnent pas correctement dans la nouvelle version de react native qui est 0.61.4. J'ai donc décidé de rétrograder mon projet de 0.61.4 to 0.60.4
. Mon code ne fonctionne pas après avoir changé de version. Après la mise à niveau, les fichiers pod de la version native de React sont modifiés, cela cause une erreur.
Je résous mon problème en suivant l'étape, cela peut aider à résoudre votre erreur.
Après la rétrogradation (0.60.4) mon code ne fonctionne pas car certains fichiers pod sont modifiés. J'ai donc changé mes fichiers pod quelque chose comme ça. Après avoir changé les fichiers pod mon code fonctionne très bien.
pod 'React', :path => '../node_modules/react-native/'
pod 'React-Core', :path => '../node_modules/react-native/React'
pod 'React-DevSupport', :path => '../node_modules/react-native/React'
pod 'React-fishhook', :path => '../node_modules/react-native/Libraries/fishhook'
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-RCTWebSocket', :path => '../node_modules/react-native/Libraries/WebSocket'
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 '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'
Après la mise à niveau (0.61.4) mon fichier pod ressemble à ceci
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'