React Native packager.sh:第11行:node:找不到命令

时间:2018-07-29 03:04:05

标签: android reactjs react-native android-studio-2.3

我使用Create-React-Native-App启动了一个新项目,然后从该项目中弹出。我按照React-Native docs的说明操作,在Android Studio上打开了一个虚拟设备,然后运行yarn android来构建应用程序。然后,我收到此错误消息:

enter image description here

我当前正在使用Node 8.11.1,并且该命令在我的终端上正常运行。我用NVM安装了它。

在packager.sh文件中,这是第11行:

node "./local-cli/cli.js" start "$@"

这是我的.bashrc.bash_profile文件:

.bashrc

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)

# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"

.bash_profile

[[ -s "$HOME/.profile" ]] && source "$HOME/.profile" # Load the default .profile

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

source ~/.bashrc

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

在虚拟设备中,我收到错误消息:Unable to load script from assets index.android.bundle. Make sure your bundle is packaged correctly or you're running a packager server

我在这里发现了两个与此问题有关的问题,但是其中一个正在使用Nuclide,另一个正在使用Xcode。有人可以帮忙解决这个问题吗?

4 个答案:

答案 0 :(得分:9)

来自https://github.com/realm/realm-js/issues/1448#issuecomment-340757479

的答案和讨论

为运行此命令而打开的默认外壳程序的PATH中没有NVM节点。给出的解决方案是将现有的节点安装链接到Shell期望的位置:

ln -s $(which node) /usr/local/bin/node

答案 1 :(得分:1)

您可以尝试运行以下命令:

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

Refernece

答案 2 :(得分:0)

我面临着同样的问题,并且正在使用nvm。我需要做的是

nvm alias default v8.15.1

答案 3 :(得分:0)

只需与仍然有此问题的人进行更新。

我尝试了上述所有解答(以及来自github的一些建议),但是它们都不适合我的情况(我正在使用nvmnode v10.15.3(TLS) )

我找到的最终解决方案是卸载nvmnodejs,然后通过{{3}使用nodejs重新安装nvm 而不 }。

它有效!