android – React Native:未设置JAVA_HOME,并且在PATH中找不到“java”命令

我已经按照官方 Getting Started一步一步地进行了操作.我从干净的linux安装开始,按照“使用本机代码构建项目”选项卡安装所需的一切.我还阅读了故障排除部分.我已经使用终端创建了项目.

这是我运行react-native run-android时的错误

Starting JS server...
    Building and installing the app on the device (cd android && ./gradlew installDebug)...

    ERROR: JAVA_HOME is not set and no 'java' command Could be found in your PATH.

    Please set the JAVA_HOME variable in your environment to match the
    location of your Java installation.

    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/android-setup.html

它没有找到JAVA_HOME,因为最新版本的Android Studio不需要在系统中安装Java.而是使用内部JRE.

重复免责声明:我已经阅读了this question.这不是我想要的.我知道如何设置Java主页.我只想运行react项目而不必安装单独的Java.

问题:

>我怎样才能在Android Studio文件夹中找到内部Java,以便我可以将JAVA_HOME指向它?
>如果不可能,我可以使用Android Studio在android文件夹中打开并运行项目吗?在修改文件夹中的React JavaScript代码后,如何刷新此项目?

解决方法

我会回答我自己的问题并赞助我的linux用户

1-要将JAVA_HOME指向Android Studio附带的JRE,首先找到Android Studio安装文件夹,然后找到/ jre目录.该目录的完整路径是您需要将JAVA_PATH设置为(感谢@TentenPonce为他的answer).
在linux上,您可以通过将此行添加到.bashrc或.bash_profile文件来设置JAVA_HOME:

export JAVA_HOME=<Your Android Studio path here>/jre

如果您遵循针对Linux的React Native入门,则此文件(一个或另一个)与您添加ANDROID_HOME的文件相同.两者都认隐藏,可以在您的主目录中找到.添加行后,您需要重新加载终端,以便它可以获取新的环境变量.所以输入:

source $HOME/.bash_profile

要么

source $HOME/.bashrc

现在你可以在同一个终端运行react-native run-android.另一种选择是重新启动操作系统.其他终端可能有不同的工作

注意:要使项目实际运行,您需要提前启动Android模拟器,或者连接真实设备.最简单的方法是打开一个已经存在的Android Studio项目并从那里启动模拟器,然后关闭Android Studio.

2-因为反应本机run-android似乎只是这样:

cd android && ./gradlew installDebug

您实际上可以使用Android Studio打开嵌套的Android项目并手动运行它.如果您在模拟器中使用enable live reload,则可以重新加载JS更改.键入CTRL M(MacOS上为CMD M),然后在出现的菜单中选择“启用实时重新加载”选项(对于his answer,请给@BKO致敬)

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...