npm运行android挂起'加载依赖图,完成'(BlueWallet)

问题描述 投票:4回答:3

我正试图从this github source克隆BlueWallet。

我克隆项目并安装了所需的包。此外,模拟器与android studio AVD一起运行。

但每当我试图运行npm start android它挂在文本Loading dependency graph, done.,没有更多的事情会发生!

这很奇怪,因为无论何时我尝试运行相同的场景和命令来启动一个连接到模拟器的纯反应本机,它都可以正常工作。

npm start android的结果如下:

$ npm start android

> [email protected] start /home/Learning/ReactNative/BlueWallet
> node node_modules/react-native/local-cli/cli.js start "android"

   ┌─────────────────────────────────────────────────────────────────────────────        ─┐
│                                                                                  │
│  Running Metro Bundler on port 8081.                                             │
│                                                                                  │
│  Keep Metro running while developing on any JS projects. Feel free to            │
│  close this tab and run your own Metro instance if you prefer.                   │
│                                                                                  │
│  https://github.com/facebook/react-native                                        │
│                                                                                  │
└─────────────────────────────────────────────────────────────────────────────    ─┘

Looking for JS files in
   /home/Learning/ReactNative/BlueWallet 

Loading dependency graph, done.
android react-native avd
3个回答
2
投票

我自己找到了解决方案。实际上Loading dependency graph, done实际上并不是一个错误,服务器不会挂起任何东西。它只是在等待模拟器连接到它。

这是我做的:

  • 在一个单独的终端中,我确实运行了npm start,这样服务器(打包器)正在启动。
  • 在另一个终端,我运行npm run android。现在将选择模拟器,并将连接8081的端口,第一个命令的服务器正在运行,一切都会正常。

注意:我确实在项目的某些部分做了一些曲折,并在操作系统上做了如下操作。如果将来有人想要做同样的事情,也许对他有用:

  • 将java home变量设置为正确(将其添加到bashrcprofile或..) export JAVA_HOME="/usr/lib/jvm/java-10-openjdk" export PATH=$JAVA_HOME/bin:$PATH
  • 设置android SDK和其他env变量; export ANDROID_HOME=/home/execut3/android-sdk export ANDROID_SDK_ROOT=/home/execut3/android-sdk export JAVA_OPTS='-XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee' export PATH=$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$PATH
  • 运行模拟器 $ emulator -list-avds $ emulator -avd <avd name>
  • 如果发生错误Execution failed for task ':app:compileDebugJavaWithJavac' react native,在第19行的android/app/src/main/java/com/bluewallet/MainApplication.java中,将其更改为return true以忽略调试。此外,这个link也可能有用。
  • google()存储库添加到比android/build.gradle文件中的其他位置更高的位置。
  • react-native文件中将0.57.5的版本更改为package.json并删除node_modules然后再次安装。

0
投票

在我的情况下,当aplication运行出现关于“BASE_MAP.fill(255)”的错误时,我尝试使用“react-native run-android”。然后我运行“npm run prepare”来解决上面提到的错误。我希望我的解决方案可以帮到你。

The app runs in my Android


-1
投票

我有时会遇到这个问题,特别是当你通过按ctrl + c来杀死节点服务器时,我做了一些事情,比如unistalling node和安装一个较低的版本,n安装最新版本运行节点服务器在另一个端口上

react-native start --port=8082
© www.soinside.com 2019 - 2024. All rights reserved.