Búsqueda de sitios web

javascript - ¿cómo resolver el problema de "folly/Portability.h" y "Archivo .../main.jsbundle no existe" en React Native?


Cuando quiero compilar mi aplicación iOS para producción, aparece este error: 'folly/Portability.h' file not found y echo 'error:this File .../main.jsbundle does not exist. This must be a bug with He buscado en Internet para resolver este problema, pero no puedo solucionarlo

aquí está la información de react-native:

  React Native Environment Info:
System:
  OS: macOS 10.14.4
  CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
  Memory: 38.35 MB / 8.00 GB
  Shell: 3.2.57 - /bin/bash
Binaries:
  Node: 10.15.0 - /usr/local/bin/node
  npm: 6.9.0 - /usr/local/bin/npm
  Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
  iOS SDK:
    Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
  Android SDK:
    API Levels: 21, 22, 24, 25, 26, 27, 28
    Build Tools: 25.0.0, 26.0.0, 26.0.2, 26.0.3, 27.0.1, 27.0.3, 28.0.3
    System Images: android-18 | Google APIs Intel x86 Atom, android-19 | Google APIs Intel x86 Atom, android-22 | Google APIs Intel x86 Atom, android-24 | Google APIs Intel x86 Atom, android-25 | Google APIs ARM EABI v7a, android-25 | Google APIs Intel x86 Atom, android-27 | Google APIs Intel x86 Atom, android-28 | Intel x86 Atom_64, android-28 | Google Play Intel x86 Atom
IDEs:
  Android Studio: 3.4 AI-183.5429.30.34.5452501
  Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild
npmPackages:
  react: 16.6.3 => 16.6.3 
  react-native: ^0.59.6 => 0.59.6 
npmGlobalPackages:
  react-native-cli: 2.0.1
  react-native-rename: 2.4.1

aquí está la configuración de mis Pods

platform :ios, '9.0'

target 'AppXYZ' do

  # Pods for AppXYZ

  # Required by RNFirebase
  pod 'Firebase/Core', '~> 5.15.0'
  pod 'Firebase/Messaging', '~> 5.15.0'

  pod 'RNCAsyncStorage', :path => '../node_modules/@react-native-community/async-storage'
  pod 'react-native-netinfo', :path => '../node_modules/@react-native-community/netinfo'

  pod 'React', :path => '../node_modules/react-native'
  pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
  pod 'RNGestureHandler', :path => '../node_modules/react-native-gesture-handler'
  # Third party deps podspec link
  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 'AppXYZTests' do
    inherit! :search_paths
    # Pods for testing
  end

end

Para resolver el primer problema ('folly/Portability.h') que encontré en internet, encontré esto (pero no funciona)

      # Third party deps podspec link
  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'

y para resolver el segundo problema encontré esto: react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios/assets pero no funciona, me genera otro error:

Loading dependency graph...error jest-haste-map: Haste module naming collision:
  Duplicate module name: react-native
  Paths: .../ios/Pods/React/package.json collides with .../node_modules/react-native/package.json

estas líneas tendrán que resolver este problema (pero no lo resuelven)

  pod 'React', :path => '../node_modules/react-native'
  pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
  pod 'RNGestureHandler', :path => '../node_modules/react-native-gesture-handler'

alguien puede ayudarme porque estoy atascado

Respuesta #1

solo arrastra y suelta la carpeta Folly en el cuadro "Header Search Paths" en la pestaña Build Settings desde la configuración del proyecto Pods y recompila. ver imagen abajo

configuración de la ruta del encabezado de búsqueda