ios 仅限Xcode:“不存在捆绑包URL确保您正在运行打包服务器或包含.jsbundle文件”

bfhwhh0e  于 2023-10-21  发布在  iOS
关注(0)|答案(4)|浏览(129)

说明

在Xcode 15(MacOS索诺马)上,我在构建项目时遇到以下错误:* 构建成功 * 但没有bundle URL请确保您正在运行打包服务器或已包含.jsbundle文件
但是,当我从命令行构建它时,一切都正常。

export NODE_OPTIONS=--openssl-legacy-provider && react-native run-ios --port=8082 --simulator='iPhone 15 Pro' && node node_modules/react-native/local-cli/cli.js start

Xcode上缺少什么?怎么解决呢?

React原生版本

0.63.3

npx react-native info输出

System:
    OS: macOS 14.0
    CPU: (8) arm64 Apple M1 Pro
    Memory: 47.94 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.17.1 - ~/.nvm/versions/node/v18.17.1/bin/node
    Yarn: 1.22.19 - /opt/homebrew/bin/yarn
    npm: 9.6.7 - ~/.nvm/versions/node/v18.17.1/bin/npm
    Watchman: 2023.09.04.00 - /opt/homebrew/bin/watchman
  Managers:
    CocoaPods: 1.12.1 - /opt/homebrew/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 23.0, iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0
    Android SDK: Not Found
  IDEs:
    Android Studio: Not Found
    Xcode: 15.0/15A240d - /usr/bin/xcodebuild
  Languages:
    Java: Not Found
    Python: Not Found
  npmPackages:
    @react-native-community/cli: Not Found
    react: 16.13.1 => 16.13.1
    react-native: 0.63.3 => 0.63.3
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

重现步骤

从Xcode构建(版本或发布)

Snack、屏幕截图或指向存储库的链接

v8wbuo2f

v8wbuo2f1#

看看这是否有效:
在Xcode的Build Phases部分,找到Bundle React Native Code and Images部分,并在开始处添加此部分

if [ -d "/opt/homebrew/bin" ] && [ -x "/opt/homebrew/bin" ]; then
    export PATH="$PATH:/opt/homebrew/bin"
fi

(假设你的自制软件安装没有安装在非标准的地方)

z2acfund

z2acfund2#

这个解决方案对我很有效:https://stackoverflow.com/a/75602510/387912(感谢Manil Malla
1.我不得不手动创建bundle。

npx react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios

1.将main.jsbundle添加到**“构建阶段>复制捆绑包资源”**

事实上,这份文件不见了。
还有三个问题。

  • 为什么它不见了?
  • 如何自动做到这一点?
    *重要(使用该解决方案,本Map像(徽标,图标)不再工作......)
t98cgbkg

t98cgbkg3#

上个月,我在React Native项目中遇到了这个问题。要解决这个问题,你只需要遵循以下两个步骤

步骤1在根项目中执行此命令

react-native bundle --entry-file='index.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios' --assets-dest='./ios

第2步您已经使用上面的命令创建了main. jsbundle将main.jsbundle添加到“Build Phases > Copy Bundle Resources“

看看这个

tjjdgumg

tjjdgumg4#

我发现了一个错误,
但还不知道怎么解决。

相关问题