IT

"RCTBundleURLProvider.h" 파일을 찾을 수 없음 - AppDelegate.m

itgroup 2023. 5. 23. 21:48
반응형

"RCTBundleURLProvider.h" 파일을 찾을 수 없음 - AppDelegate.m

내 리액트 네이티브 앱을 XCode에서 실행하려고 하는데 이 오류가 계속 발생합니다.저는 그 문제를 어떻게 해결해야 할지 모르겠습니다.좋은 의견이라도 있나?

XCode에서 오류의 스크린샷:

스크린샷

xcode Product->Scheme->Manage Scheme(스킴 관리)에서 '+'를 클릭하여 "React"를 선택하고 React is shared(반응 공유)를 설정합니다.

모듈을 한 후 를 실행합니다.npm install( 더 yarn)된 후 react-native upgrade이를 통해 기존 파일을 템플릿 파일로 대체할 수 있는 옵션을 제공하므로 문제를 해결할 수 있는 경우 기본 링크를 다시 연결할 수 있습니다.물론 프로젝트를 Xcode로 정리하는 것을 잊지 마십시오.

React Native 0.40.0 이상을 사용하는 모든 경우 헤더 가져오기는 RN 0.40.0에서 크게 변경되어 많은 .h 파일을 찾을 수 없음 오류가 발생합니다. react-native-git-upgrade디버그 중에 문제를 해결했지만 릴리스/디버깅에서 빌드가 실패했습니다.

저는 코코팟과 Xcode 8.2.1이 있는 RN 0.42.3을 사용하고 있습니다.

이 문제를 완전히 해결하려면 Xcode>Product>Scheme>Edit Scheme>로 이동합니다.

  1. 병렬화 빌드 선택 취소
  2. Targets(대상)에서 + 버튼을 클릭하고 React(반응) 추가
  3. 추가된 대응을 대상 목록의 맨 위로 끕니다.여기에 이미지 설명 입력

이제 프로젝트를 정리하고 빌드합니다.

다른 제안들 중 어느 것도 제 오류를 해결하지 못했지만 이 제안은 성공했습니다.

1 - 포드 파일 만들기

이름이 지정된 파일 만들기ios/Podfile다음 내용을 포함하는 반응 네이티브 앱 내부:

# You Podfile should look similar to this file. React Native currently does not support use_frameworks!
source 'https://github.com/CocoaPods/Specs.git'

platform :ios, '8.0'

target '<YOUR_APP_NAME>' do
  # Fixes required for pod specs to work with rn 0.42
  react_native_path = "../node_modules/react-native"
  pod "Yoga", :path => "#{react_native_path}/ReactCommon/yoga"
  pod "React", :path => react_native_path, :subspecs => [
    'Core',
    'RCTActionSheet',
    'RCTAnimation',
    'RCTGeolocation',
    'RCTImage',
    'RCTLinkingIOS',
    'RCTNetwork',
    'RCTSettings',
    'RCTText',
    'RCTVibration',
    'RCTWebSocket'
  ]

  pod 'GoogleMaps'  # <~~ remove this line if you do not want to support GoogleMaps on iOS

# when not using frameworks  we can do this instead of including the source files in our project (1/4):
#  pod 'react-native-maps', path: '../../'
#  pod 'react-native-google-maps', path: '../../'  # <~~ if you need GoogleMaps support on iOS
end

2 - 포드 파일 설치

을 합니다.pod installios 폴더 안에서.

3 - XCode 재설정

XCode를 다시 시작하면 오류가 사라집니다.

은 제게맞해공것다입니는하유은결책는다▁to▁that▁the▁share니것입제▁solution▁is▁for게▁works는하를 공유하는 것입니다.React계략을 꾸미다

scheme이 scheme을 사용하여 새로 생성합니다.Selecting scheme menu -> Manage Scheme -> + -> choose React합니다.

여기에 이미지 설명 입력

여기에 이미지 설명 입력 여기에 이미지 설명 입력

10을 또한 Xcode 10을사경우로 합니다.File -> Project Settings build 합니다.

여기에 이미지 설명 입력

XCode에서 React 빌드를 처음 실행한 후 이 문제가 발생했습니다. 오류를 제거하기 위해 (팀을 선택하고 적절한 프로비저닝을 수행한 후) 실제로 빌드하고 실행하기만 하면 되었습니다.XCode는 처음에 컴파일하고 연결할 때까지 실제로 오류가 아닌 오류를 표시하는 경우가 있습니다.

저는 다음 단계를 통해 이 문제를 해결했습니다.

  1. xcode에서 프로젝트 루트를 선택합니다.
  2. 드래그React.xcodeprojLibraries프로젝트의 근본까지.
  3. 이름 내은 로젝트내클릭이름이름 (경우프이내)))SaleKit)에서.TARGETS
  4. 선택하세요.Build Phases
  5. 의 다 운 위 치 롭 의 드롭다운에서Target Dependencies더하다React
  6. 재구축 또는 재실행

여기에 이미지 설명 입력

리액트 네이티브 "0.54.2"의 경우 다음 솔루션으로 해결했습니다.

에서 Xcode 서택선을 합니다.Product->Scheme->Manage Schemes Project가 ' 안 함'으로 했습니다.

최상의 솔루션:

프로젝트의 '빌드 설정'을 Xcode로 열고 '헤더 검색 경로'를 검색합니다.

다른 속성이 '예' 또는 '아니오'인 '헤더 검색 경로' 옆을 두 번 클릭합니다.

이제 "헤더 검색 경로"(빌드 설정 아래)에 다음을 추가합니다.

$(SRCROOT)/../node_modules/react-native/React
$(SRCROOT)/../node_modules/react-native/React/Base

둘 다 재귀적으로 만드는 것을 잊지 마세요.

당신은 달리고 있을지도 모릅니다..xcodeproj설치 후의 파일입니다.

을 닫고 엽다니닫고를 엽니다..xcworkspace파일입니다. 저한테는 효과가 있었어요.

내가 실행하는 프로젝트의 기본 디렉토리에서:

node_modules/react-native/packager/packager.sh --reset-cache

그 결과:

Scanning 554 folders for symlinks in /Users/..../work/..../react_tutorial/AwesomeProject/node_modules (15ms)
 ┌────────────────────────────────────────────────────────────────────────────┐
 │  Running packager on port 8081.                                            │
 │                                                                            │
 │  Keep this packager running while developing on any JS projects. Feel      │
 │  free to close this tab and run your own packager instance if you          │
 │  prefer.                                                                   │
 │                                                                            │
 │  https://github.com/facebook/react-native                                  │
 │                                                                            │
 └────────────────────────────────────────────────────────────────────────────┘
Looking for JS files in
   /Users/..../work/...../react_tutorial/AwesomeProject

Loading dependency graph... ERROR  Packager can't listen on port 8081
Most likely another process is already using this port
Run the following command to find out which process:

lsof -i :8081

다른 패키지 관리자 프로세스가 실행 중일 때 패키지 관리자를 실행할 수 없습니다.

프로세스가 다음과 함께 실행되고 있음을 발견했습니다.

lsof -i :8081

보다 ㅜㅜㅜkill 9 ...과정

Xcode를 닫은 후 다음을 실행합니다.

npm install

그리고 다시 Xcode를 시작했는데, 이 순간부터 모든 것이 예상대로 작동합니다!!

저도 같은 문제가 있었고 React/RCTBundleURLProvider.h 에 RNFIRMessaging.h를 배치하여 수정했습니다.

그래서 저는 다음과 같이 보일 것입니다.

#import "AppDelegate.h"
#import "RNFIRMessaging.h"

#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>

다음을 시도합니다.

  1. 청소(+).cmdshiftK
  2. 빌드 코어 React - Xcode에서 스키마로 React를 선택하고 빌드합니다(+).cmdB
  3. 오류가 발생한 라이브러리를 빌드합니다(예: RCTText).
  4. 앱을 빌드합니다.

제품->구성표->구성표 관리->+를 클릭한 다음 공유로 반응을 추가합니다.또한 프로젝트 이름도 거기에 있는지 확인합니다.

저는 같은 문제에 직면했습니다. 그리고 나서 저는 노드를 삭제했습니다. 이 단계들을 사용해 보세요.

  1. node_modules 폴더 삭제 - rm -rf node_modules &&npm 설치
  2. packager 캐시 재설정 - rm - fr $TMPDIR/react-* 또는 node_proxy/packager/packager.sh --packager-cache
  3. 투명한 감시자 시계 - 감시자 시계 - 델 올.

그런 다음 빌드를 만들고 봅니다.

한 후 이 이 React의 이라는 것을 .#import "RCTBundleURLProvider.h"#import <React/RCTBundleURLProvider.h>

려달을 합니다.npm installreact-native이 오류를 해결합니다.

교체하는 나를 위해

#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>

타고

#import <RCTBundleURLProvider.h>
#import <RCTRootView.h>

AppDelegate.m 파일이 작동했습니다.

을 하지 않은 경우npm install이 문제가 발생할 가능성이 높습니다.

위에 언급된 모든 답변을 검토했습니다.

다음은 저를 위한 해결책입니다.

1단계:

실행:

npm install react-native-fcm --save 

결과적으로 프로젝트의 디렉토리를 node_modules > react-native-fcm 아래에 만듭니다.

프로젝트에 react-native-fcm 추가

2단계:

추가해야 합니다.'$(SRCROOT)/../node_modules/react-native-fcm/ios'빌드 설정에서 검색 경로 헤더로 이동합니다.

헤더 검색 경로에 추가

이 두 단계는 오류를 제거하는 데 도움이 되었습니다.

자세한 내용은 다음 링크를 참조하십시오.

https://github.com/evollu/react-native-fcm/issues/63

https://github.com/evollu/react-native-fcm/issues/21

나의 경우, 나는 node_modules를 삭제하고 다시 설치할 수 없었고 또한 할 수 없었습니다.react-native-git-updgrade또는react-native upgrade왜냐하면 .60이 내 의존성에 문제를 일으키기 때문에 나는 RN-0.59에 머물고 싶었기 때문입니다.

어쨌든 제 상황은 'React/RCTBundleURLProvider'가 누락된 것이었습니다.h' 줄이미 스키마에서 React를 사용할 수 있었습니다.그것은 내 라이브러리 디렉토리에 없었습니다.대상의 빌드 설정을 확인했습니다.

대상 종속성 내부에도 리액트가 있었습니다.

저는 '대응' 대상 종속성을 삭제한 후 다시 추가했습니다.정리된 빌드 폴더, 재구축된 프로젝트.효과가 있었습니다.

저는 리액트 네이티브 0.61을 사용하고 있습니다.공유 확장을 생성했는데 이 오류가 발생했습니다.교체해야 했습니다.

#import "RCTBundleURLProvider.h"

와 함께

#import "React/RCTBundleURLProvider.h"

https://github.com/facebook/react-native/blob/v0.63.3/template/ios/Podfile

찾기/바꾸기HelloWorld프로젝트 이름을 입력합니다.

이 파일을 에 배치합니다../ios프로젝트의 폴더

gem install cocoapods
cd ios
pod install

그런 다음 을 엽니다.YourProject.xcworkspaceXCode의 파일

XCode로 이동합니다.Product -> Scheme -> Manage Schemes그리고 체크React

그런 다음 프로젝트를 다시 구축해 보십시오.

저는 모든 제안을 시도했지만 아무도 작동하지 않았습니다. 저는 레포를 삭제하고 다시 복제하여 저를 위해 작동합니다. 따라서 제 제안은 변경 사항을 다시 커밋하고 저를 위해 작동했던 레포를 다시 복제하는 것입니다.

터미널 실행 시 리액티브 네이티브를 설치해야 합니다.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

그리고나서

brew install node
brew install watchman
npm install -g react-native-cli

출처:
https://facebook.github.io/react-native/docs/getting-started.html

프로젝트 경로에 공백이 없어야 합니다.폴더 이름을 바꾸고 공간을 삭제하는 것만으로도 문제가 해결됩니다.

언급URL : https://stackoverflow.com/questions/40368211/rctbundleurlprovider-h-file-not-found-appdelegate-m

반응형