我的"Helloworld"应用程序的模板代码是用javascript编写的,并在Windows上进行原生反应。我连接了我的android模拟器,想在上面启动应用程序。当我运行"react native run android"命令时,会发生以下情况。Node.js作为一个单独的窗口打开,它写着"Loading dependency graph,done"。但是,在终端窗口中,出现以下错误消息:
>User helloworld $ react-native run-android
Starting JS server...
Building and installing the app on the device (cd android && gradlew.bat installDebug)...
FAILURE: Build failed with an exception.
>*What went wrong:
Could not create service of type ScriptPluginFactory using
BuildScopeServices.createScriptPluginFactory().
>Could not create service of type PluginResolutionStrategyInternal using BuildScopeServices.createPluginResolutionStrategy().
>Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
>Get more help at https://help.gradle.org
BUILD FAILED in 1s
Could not install the app on the device, read the error above for details.
Make sure you have an Android emulator running or a device connected and have
set up your Android development environment:
https://facebook.github.io/react-native/docs/getting-started.html
Command failed: gradlew.bat installDebug
Error: Command failed: gradlew.bat installDebug
at checkExecSyncError (child_process.js:616:11)
at Object.execFileSync (child_process.js:634:13)
at runOnAllDevices (C:UsersUserhelloworldnode_modulesreact-nativelocal-clirunAndroidrunAndroid.js:299:19)
at buildAndRun (C:UsersUserhelloworldnode_modulesreact-nativelocal-clirunAndroidrunAndroid.js:135:12)
at isPackagerRunning.then.result (C:UsersUserhelloworldnode_modulesreact-nativelocal-clirunAndroidrunAndroid.js:65:12)
at process._tickCallback (internal/process/next_tick.js:68:7)
-关于模拟器是否连接:
$ adb devices
List of devices attached
emulator-5554 device
(适用于我的Android智能手机)。USB调试已启用。
-关于我试图解决的问题:
- 我的用户被设置为管理员
我有JDK1.0.1版本。我安装了JDK1.8.0_201,现在它被设置为我的java版本。
User helloworld $ java -version java version "1.8.0_201"
我在项目目录中创建了".gradle"文件夹,以防访问/创建此类文件夹时出现问题。
-我在local.properties文件中为sdk.dir指定了路径
-我的操作系统是Windows 8.1。Gradle的版本是4.7。
-我已经安装了Android Studio、JDK8和11。
-我使用GitBash作为终端
-我有以下系统的环境变量:
ANDROID_HOME=c:\Users\AppData\Local\ANDROID\Sdk
GRADLE_HOME=c:\Users\User.GRADLE\wrapper\dists\GRADLE-4.7-all\4cret0dgl5o3b21weaoncl7ys\GRADLE-4.7
JAVA_HOME=c:\Program Files\JAVA\jdk1.8.0_201
路径=c:\Program Files(x86)\Common Files\Oracle\JAVA\javapath;C: \Windows\system32;C: \Windows;C: \Windows\System32\Wbem;C: \Windows\System32\WindowsPowerShell\v1.0\;C: \Program Files(x86)\NVIDIA Corporation\PhysX\Common;C: \Program Files\Git\cmd;。\插件;C: \Users\User\AppData\Local\Programs\Python\Python37-32;C: \Program Files\nodejs\;c: \Users\User\AppData\Local\Android\Sdk\平台工具;C: \Users\User\AppData\Local\Android\Sdk\平台工具;%GRADLE_HOME%\bin;%JAVA_HOME%\bin
如果您对之前的问题感兴趣:我最初的问题是没有显示任何错误,但仍然没有在模拟器上启动任何东西。我把我项目的"android"文件夹放进了安卓工作室,它在我的智能手机上启动了这个应用程序。然而,当我对App.js进行小的更改时,由于一些未知的错误,该项目无法更新,我无法将其作为新项目重新打开。所以我不得不通过终端使用"react native run android"来运行应用程序来解决这个问题,现在我正处于这种问题状态。
Mmm。。。当你在控制台上运行react native run android时,1它应该检查你是否有android sdk,第二它应该编译一些东西,第三,它应该在另一个控制台中启动metro bundler。"加载依赖关系图,完成"应该出现在OTHER控制台上,而主控制台仍将编译大约一分钟甚至更长时间。。。然后它会启动意向并打开应用程序。有时它只是在第一次加载后显示一个空白屏幕,所以你应该退出应用程序并将其从最近的版本中删除,然后重新打开应用程序
发布截图后,你似乎只看到辅助控制台,而主控制台没有显示(?)
您想运行一个必须使用Android studio的react原生或纯java应用程序吗?
如果对于工作室应用程序:你必须从你的手机中启用开发者的选项,以启用该选项。请检查:
https://www.samsung.com/uk/support/mobile-devices/how-do-i-turn-on-the-developer-options-menu-on-my-samsung-galaxy-device/