项目初始化以后出现:Unable to load script from assets 'index.android.bundle
Posted believe66
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了项目初始化以后出现:Unable to load script from assets 'index.android.bundle相关的知识,希望对你有一定的参考价值。
Mac中真机测试React Native project时出现Unable to load script from assets ‘index.android.bundle‘
刚接触学习React Native,在进行真机调试时,报错出现Unable to load script from assets ‘index.android.bundle’. Make sure your bundle is packaged correctly or you’re running a packager server。这里对此做一下记录;
笔者对此也查了相关的解决方法,但是并没有解决我所遇到的问题,解决方法如下:
第一步:首先切到我们工程的根目录下,然后在android/app/src/main目录下新建一个assets文件夹,可以在终端中执行以下命令建立:
mkdir android/app/src/main/assets
- 1
当然也可以在Android Studio中手动建立;
第二步:同样需要在我们工程的根目录下,执行以下命令:
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
- 1
第三步:重新运行以下命令即可:
react-native run-android
- 1
然而,这样并没有解决上述问题,依然报错,且此时会出现另外一个问题:
Cannot find entry file index.android.js in any of the roots: ["/Users/******/ReactNativeProjects/FirstReactApp"]
- 1
这时我们去assets文件夹下才发现,第二步的命令并没有在assets文件夹中生成我们所需的文件,里面没有任何文件生成,此时笔者继续查找,在Stack Overflow中找到了解决方法,用下面的命令替换刚才第二步的命令:
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
- 1
原来是index.android.js已经改成index.js,难怪找不到呢!!!
使用上述命令后,此时在assets文件夹下会多出index.android.bundle和index.android.bundle.meta两个文件;
再重新运行工程,终于出现运行成功的界面啦!
小结:遇到问题时要敢于去解决,多查找问题的原因,这里index.android.bundle是用来调用系统原生控件的js脚本,每次当你改变了 index.js时,需要使用上面的命令及时地更新index.android.bundle,然后打包才可以把新的index.js应用上,所以当没有index.android.bundle文件时,React Native是无法运行的;
以上是关于项目初始化以后出现:Unable to load script from assets 'index.android.bundle的主要内容,如果未能解决你的问题,请参考以下文章
Unhandled Exception:System.DllNotFoundException: Unable to load DLL"**"
Unable to load annotation processor factory
Unable to load annotation processor factory
delphi 7 unable to create process
eclipse中无法新建Android工程 出现问题:Plug-in org.eclipse.ajdt.ui was unable to load