CDN:某些 React Native 项目在运行 pod install 时无法下载 trunk URL?

问题描述 投票:0回答:5

我有这个反应本机项目,我在多台计算机上工作,在我的 MacBook 中一切正常,当我在运行“npm install”后运行“pod install”时,pods 项目成功创建,另一方面,当我做同样的事情时在我的桌面上出现以下错误:

我试过为其他项目安装 pod,一切正常,问题尤其出在这个项目上。

更新数据:

感谢您的评论,让您知道:

运行后:

pod repo remove trunk
pod install

这就是我得到的:

这是我的 package.json:

{
  "name": "aksystems",
  "version": "3.9.8",
  "description": "",
  "author": "",
  "private": true,
  "scripts": {
    "start": "react-native start",
    "test": "jest",
    "lint": "eslint .",
    "ios": "cd ios/ && rm -rf Pods/ && rm -rf Podfile.lock && pod install && cd ../ && react-native run-ios",
    "android": "cd android/ && ./gradlew clean && cd ../ && react-native run-android",
    "build:ios": "node node_modules/react-native/local-cli/cli.js bundle --entry-file='index.js' --bundle-output='./ios/mstore/main.jsbundle' --dev=false --platform='ios' --assets-dest='./ios'",
    "setup": "./scripts/setup.sh",
    "setup:android": "./scripts/setup_android.sh",
    "reset": "./scripts/reset.sh",
    "postinstall": "patch-package && npx jetify"
  },
  "dependencies": {
    "@babel/plugin-proposal-class-properties": "^7.5.5",
    "@babel/plugin-proposal-decorators": "^7.4.4",
    "@invertase/react-native-apple-authentication": "^0.1.1",
    "@react-native-community/async-storage": "^1.5.1",
    "@react-native-community/netinfo": "5.0.1",
    "@react-native-community/viewpager": "^3.3.0",
    "@react-native-firebase/app": "^6.0.4",
    "@react-native-firebase/auth": "^6.0.4",
    "api-ecommerce": "0.0.34",
    "base-64": "^0.1.0",
    "currency-formatter": "^1.5.4",
    "deprecated-react-native-listview": "0.0.6",
    "firebase": "^7.9.1",
    "firebase-admin": "^8.9.2",
    "glob": "^7.1.6",
    "html-entities": "^1.2.1",
    "jetifier": "^1.6.3",
    "lodash": "^4.17.15",
    "moment": "^2.24.0",
    "native-base": "^2.13.8",
    "oauth-1.0a": "^2.2.6",
    "patch-package": "^6.1.2",
    "postinstall-postinstall": "^2.0.0",
    "react": "16.9.0",
    "react-native": "0.61.5",
    "react-native-admob": "^2.0.0-beta.6",
    "react-native-animatable": "^1.3.2",
    "react-native-app-intro-slider": "^3.0.0",
    "react-native-apple-authentication": "https://github.com/ton44079/react-native-apple-authentication",
    "react-native-camera": "git+https://[email protected]/react-native-community/react-native-camera.git",
    "react-native-clean-form": "^0.5.0",
    "react-native-collapsible": "^1.4.0",
    "react-native-country-picker-modal": "^1.10.0",
    "react-native-credit-card-input": "^0.4.1",
    "react-native-date-picker": "^2.7.7",
    "react-native-drawer": "^2.5.1",
    "react-native-facebook-account-kit": "^2.1.0",
    "react-native-fbsdk": "^1.1.1",
    "react-native-fluid-slider": "^1.0.2",
    "react-native-gesture-handler": "^1.6.0",
    "react-native-image-picker": "^2.3.1",
    "react-native-image-zoom-viewer": "^2.2.26",
    "react-native-keyboard-aware-scroll-view": "0.9.1",
    "react-native-linear-gradient": "^2.5.5",
    "react-native-localization": "^2.1.4",
    "react-native-masked-text": "^1.12.4",
    "react-native-modalbox": "2.0.0",
    "react-native-onesignal": "3.5.0",
    "react-native-paper": "3.4.0",
    "react-native-picker-select": "^6.3.3",
    "react-native-radio-buttons": "^1.0.0",
    "react-native-reanimated": "^1.7.0",
    "react-native-render-html": "^4.1.2",
    "react-native-restart": "^0.0.13",
    "react-native-screens": "^2.0.0-alpha.22",
    "react-native-scrollable-tab-view": "1.0.0",
    "react-native-snap-carousel": "^3.8.0",
    "react-native-star-rating": "^1.1.0",
    "react-native-store-rating": "^1.0.1",
    "react-native-swipe-list-view": "^2.0.0",
    "react-native-swiper": "^1.6.0-nightly.5",
    "react-native-tab-view": "^2.13.0",
    "react-native-vector-icons": "^6.6.0",
    "react-native-video": "^5.0.2",
    "react-native-webview": "8.0.1",
    "react-navigation": "4.0.10",
    "react-navigation-stack": "^1.10.3",
    "react-navigation-tabs": "^2.6.2",
    "react-redux": "7.1.0",
    "redux": "4.0.5",
    "redux-actions": "^2.6.5",
    "redux-persist": "5.10.0",
    "redux-thunk": "^2.3.0",
    "reselect": "^4.0.0",
    "tcomb-form-native": "^0.6.20",
    "tipsi-stripe": "^7.5.1",
    "urijs": "^1.19.1",
    "url": "^0.11.0",
    "url-parse": "^1.4.7",
    "util": "^0.12.1",
    "uuid": "^3.3.2",
    "validate.js": "^0.13.1",
    "wpapi": "^1.2.1"
  },
  "devDependencies": {
    "@babel/core": "7.6.2",
    "@babel/runtime": "7.6.2",
    "@react-native-community/eslint-config": "^0.0.5",
    "babel-jest": "24.9.0",
    "babel-plugin-transform-remove-console": "^6.9.4",
    "eslint": "6.5.1",
    "eslint-config-airbnb": "^18.0.1",
    "eslint-plugin-import": "^2.19.1",
    "eslint-plugin-jsx-a11y": "^6.2.3",
    "eslint-plugin-react-hooks": "^2.3.0",
    "jest": "24.9.0",
    "metro-react-native-babel-preset": "0.57.0",
    "react-test-renderer": "16.10.2",
    "reactotron-react-native": "4.0.2",
    "reactotron-redux": "3.1.2"
  },
  "jest": {
    "preset": "react-native",
    "setupFiles": [
      "./node_modules/react-native-gesture-handler/jestSetup.js"
    ]
  }
}

和播客文件:

platform :ios, '9.0'
#require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'

require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'

target 'aksystems' do
  # Pods for mstore
  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 'Google-Mobile-Ads-SDK'

  pod 'react-native-date-picker', :path => '../node_modules/react-native-date-picker'

  pod 'react-native-image-picker', :path => '../node_modules/react-native-image-picker'

  pod 'Stripe', '~> 14.0.0'

  pod 'tipsi-stripe', :path => '../node_modules/tipsi-stripe'

  pod 'react-native-onesignal', :path => '../node_modules/react-native-onesignal'

  target 'aksystemsTests' do
    inherit! :search_paths
    # Pods for testing
  end

  use_native_modules!
end

target 'OneSignalNotificationServiceExtension' do
  pod 'OneSignal', '>= 2.9.3', '< 3.0'
end

正如您所说,我在各种 SO 问题和 GitHub 帖子中看到可能是网络问题,但正如我告诉您的那样,另一个 Pod 项目运行良好,Pod 版本相同(最后一个)并且两台机器都在同一网络上运行.

ios react-native cocoapods cdn
5个回答
23
投票

您可以尝试更新存储库,因为它可能不包含您想要的内容。 更多信息

pod repo update && pod install

如果失败,使用 pod 'Google-Mobile-Ads-SDK'

example
明确添加源,

source 'https://github.com/CocoaPods/Specs.git'

老答案:

您是否尝试过从这个

SO问题
中提取的pod repo remove trunk; pod install。如果您分享您的
Podfile
.

,那将会很有用

这会从 cocoapods 中删除一个名为 `trunk' 的 repo,然后重新添加它。

这是我的 Podfile 的要点,它也使用 Firebase。


11
投票

谢谢大家的支持,经过多次努力解决这个问题,我发现解决方案与我的网络发出IPV6请求而不是IPV4有关,我不太明白这个但是我是这样解决的:

系统偏好设置 > 网络 > 高级 > TCP/IP > 配置 IPv6: 仅限本地链接

来源


3
投票

CocoaPods 1.8.x 提供了使用 Git 或 CDN(默认)的能力。

您始终可以通过添加到您的 Podfile 来回退到以前基于 git 的实现:

source 'https://github.com/CocoaPods/Specs.git'

根据您上次的错误日志,我认为这很有用。


0
投票

我遇到了完全相同的问题。事实证明,我使用

curl
从我的操作系统中的源代码编译了一个有问题的
make install
库版本。这个 libcurl 二进制文件缺少请求 https URLs 的能力。

所以我只是

make uninstall
这个 libcurl 并回退到系统的 libcurl,一切都再次正常工作。


0
投票
gem uninstall cocoapods
brew install cocoapods
© www.soinside.com 2019 - 2024. All rights reserved.