web-dev-qa-db-ja.com

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

Android St​​udioの最新バージョンではJavaをシステムにインストールする必要がないため、Java_HOMEは見つかりません。代わりに、内部JREが使用されます。

重複免責事項:私はすでに読んだ この質問 。これは私が望むものではありません。 Javaホームを設定する方法を知っています。別のJavaをインストールすることなく、reactプロジェクトを実行したいだけです。

質問:

  1. Java St​​udioフォルダー内の内部Androidを見つけて、Java_HOMEを指すようにするにはどうすればよいですか?
  2. 不可能な場合、Android St​​udioでAndroidフォルダー内のプロジェクトを開いて実行できますか?親フォルダーのReact JavaScriptコードを変更した後、このプロジェクトをどのように更新しますか?
13
Mister Smith

私は自分の質問に答えて、仲間のLinuxユーザーを支援します。

1- Java_HOMEがAndroid St​​udioに含まれるJREを指すようにするには、最初にAndroid St​​udioインストールフォルダーを探し、次に/jreディレクトリを見つけます。そのディレクトリのフルパスは、Java_PATHに設定する必要があるものです(彼の answer に@TentenPonceに感謝します)。 Linuxでは、次の行を.bashrcまたは.bash_profile filesに追加して、Java_HOMEを設定できます。

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

このファイル(どちらか)は、React Native Getting Started for Linuxを使用していた場合にAndroid_HOMEを追加したファイルと同じです。どちらもデフォルトでは非表示になっており、ホームディレクトリにあります。行を追加した後、新しい環境変数を取得できるようにターミナルをリロードする必要があります。次のように入力します:

source $HOME/.bash_profile

または

source $HOME/.bashrc

これで、同じ端末でreact-native run-Androidを実行できます。別のオプションは、OSを再起動することです。他の端末は異なる動作をする可能性があります。

注:プロジェクトを実際に実行するには、事前にAndroidエミュレーターを起動するか、実際のデバイスを接続する必要があります。最も簡単な方法は、既存のAndroid St​​udioプロジェクトを開き、そこからエミュレーターを起動し、Android St​​udioを閉じることです。

2- react-native run-Androidが行うように見えるのはこれだけです:

cd Android && ./gradlew installDebug

ネストされたAndroidプロジェクトをAndroid St​​udioで実際に開き、手動で実行できます。エミュレータで ライブリロードを有効にする を選択すると、JSの変更をリロードできます。 CTRL + M(MacOSではCMD + M)と入力し、表示されるメニューで「ライブリロードを有効にする」オプションを選択します( his answer の@BKOに称賛)

27
Mister Smith

Java St​​udioで使用される内部Androidを見つける正しい方法は、

  1. Android St​​udioを開きます
  2. 「ファイル」->「その他の設定」->「デフォルトのプロジェクト構造/ JDKの場所」に移動します。
  3. そして、そこに指定されている文字列をコピーします

これには、フォルダーを記憶したりJavaを検索したり、Java St​​udioチームの変更によってAndroidの場所に将来変更を加えたりする必要はありません。仮定する

12
Vivu

インストールしたAndroid Studioフォルダー自体にあります。

enter image description here

4
Tenten Ponce

Cmdからプロジェクトディレクトリに移動するだけで(コマンドプロンプト)Java -version.itと入力して、どのバージョンを探しているかを教えてくれました。そのため、そのバージョンをインストールし、そのバージョンのjdkが存在するようにパスを変更しました。

1
benji8
  1. Javaがインストールされていることを確認してください
  2. あなたの道は間違っています

これを行う:

    export | grep Java

結果:Java homeに設定されているもの

Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
  1. パスに従って、ディレクトリが正しいかどうかを確認します

私は自分の端末でこれをしました:

open /Library

その後、/ Java/JavaVirturalMachinesに移動すると、間違った「jdk1.8.0_202.jdk」フォルダーがあり、別の番号がありました... 4.このコマンドを使用してJava_homeを設定できます

export Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
0
rabiaasif

ユーザー変数のシステム変数noにJava_HOMEを追加してください

  1. 変数名をJava_HOMEとして作成します
  2. 値ボックスでこれらの形式を使用してください-> C:\ Program Files\Java\jdk(version)持っているものまたはダウンロードしたもの。
0
Manu Panduu

私はこれをコマンドプロンプトで実行しました(Windows 7 OSを持っています):Java_HOME = C:\ Program Files\Android\Android Studio\jre

ここで、その= toはそのjreフォルダーへのパスなので、誰でも異なることができます。

0
SrednaK