【问题标题】:React Native "No bundle URL present" Release Mode Only仅反应本机“不存在捆绑 URL”发布模式
【发布时间】:2017-10-15 01:41:57
【问题描述】:

我收到“不存在捆绑 URL”。仅当尝试在 xcode 中以发布模式运行时。我可以在调试模式下正常运行应用程序。

我跑了react-native bundle --platform ios --dev false --entry-file index.ios.js --bundle-output ios/main.jsbundle,它给了我以下错误:

Unexpected token: keyword (default)

它不显示错误可能来自的任何行号或文件。有没有更好的方法来获取有关此错误的更多上下文?

我还尝试删除 build 文件夹,npm run clean,删除 node_modules 文件夹,yarn install 没有运气。

几天前,这个完全相同的构建对我有用,所以不确定发生了什么变化。我仍然在同一版本的 MacOS、xcode 和 react native 上。

RN = 0.43.3
Xcode = 8.3.2
MacOS = Sierra 10.12.5

【问题讨论】:

  • 你解决了这个问题吗?我现在也有同样的问题
  • 我也有这个错误。它昨天开始出现在我的 CI 中,并与我的 Android 和 iOS 版本混为一谈。在 iOS 上,它甚至不会“失败”构建,它会默默地完成构建并使应用程序在启动时崩溃(抛出您遇到的错误)在 Android 上,它在 :bundleReleaseJsAndAssets 阶段失败。不过,我很难在本地复制它。您是否找到了导致此问题的任何线索?
  • 一段时间后(大约 1 天),我自己解决了这个问题。我认为它与依赖项或我的构建环境(远程 CI)有关。
  • 还没解决这个问题,快把我逼疯了!它从昨天开始,仍然无法正常工作。 GitHub 上有一个问题,但该线程中的所有建议都对我不起作用:github.com/facebook/react-native/issues/12754。如果你们设法解决这个问题,请告诉我。

标签: ios react-native


【解决方案1】:

我可以通过升级 watchman 来解决这个问题。以下是我采取的步骤:

  • brew update
  • brew unlink watchman
  • brew install watchman
  • 我跑了npm run clean,我已经设置了这样做:

    rm -rf ios/build; rm -rf ios/build; rm -rf android/build; rm -rf android/app/build; rm -rf $TMPDIR/react* ; rm -f ios/main.jsbundle; rm -rf node_modules; rm yarn.lock || true; npm cache clean; yarn cache clean
    
  • yarn installnpm install,如果你不使用 yarn

希望这可以帮助其他遇到同样问题的人。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,在项目的根目录下运行如下命令解决了:

    rm -rf ios/build/; kill $(lsof -t -i:8081); react-native run-ios
    

    此命令将从 iOS 项目中删除 build 文件夹,杀死在端口 8081 上运行的任何其他进程,然后重新运行。

    【讨论】:

      【解决方案3】:

      删除node_modules 并再次执行npm install 并且错误消失了。好像有人写错了……

      【讨论】:

      • 我已经尝试了多次,但我仍然遇到同样的问题。 Xcode 构建时没有错误,但在启动应用程序时它会因我上面列出的错误而崩溃。我认为它与某个节点模块或依赖项有关,但不确定。
      猜你喜欢
      • 1970-01-01
      • 2017-07-28
      • 2017-10-12
      • 2022-11-04
      • 2017-10-06
      • 2018-07-19
      • 1970-01-01
      • 2014-01-31
      • 2020-12-31
      相关资源
      最近更新 更多