web-dev-qa-db-ja.com

React Native Androidビルドが失敗しました。 SDKの場所が見つかりません

Androidの起動時にエラーが発生しました

What went wrong:
A problem occurred evaluating project ':app'.  
> SDK location not found. Define location with sdk.dir in the local.properties file or with an Android_HOME environment variable.
357
Pyae Sone Nyein
  • 反応ネイティブプロジェクトのAndroid/ディレクトリに移動します。
  • この行でlocal.propertiesというファイルを作成します。

    sdk.dir = /Users/USERNAME/Library/Android/sdk
    

    USERNAMEはあなたのOSXユーザー名です。

660
Ravin
  1. Reactネイティブプロジェクトに移動します - > Android
  2. ファイルを作成するlocal.properties
  3. ファイルを開く
  4. 以下のようにAndroid SDKのパスを貼り付けます

    • windowsの場合sdk.dir = C:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
    • macOSの場合sdk.dir = /Users/USERNAME/Library/Android/sdk
    • linuxの場合sdk.dir = /home/USERNAME/Android/Sdk

USERNAMEをあなたのユーザー名に置き換えます。

今、あなたの端末でreact-native run-Androidを実行してください。

290
Naveen T P

Android_PATHを追加してみることができます

export Android_HOME=/Users/<username>/Library/Android/sdk/
export PATH=$PATH:$Android_HOME/tools:$Android_HOME/platform-tools
99
Nish

~/.bash_profileを開き、以下を追加します。

 export Android_HOME=~/Library/Android/sdk/
 export PATH=$PATH:~/Android-sdks/platform-tools/
 export PATH=$PATH:~/Android-sdks/tools/

enter image description here

46
notdrone

しない _ update _ local.properties、これは間違いなく悪い習慣です。

これが私がそれを直した方法です。以下を~/.bash_profileまたは~/.bashrcに追加します。

export Android_HOME=/usr/local/share/Android-sdk
export PATH=$Android_HOME/tools:$PATH
export PATH=$Android_HOME/platform-tools:$PATH
export PATH=$Android_HOME/build-tools/23.0.1:$PATH

注: インストールにbrew caskを使用しました Android SDK following これらの手順

33
locropulenton

echo "sdk.dir = /Users/$(whoami)/Library/Android/sdk" > Android/local.properties

25
snowcamel

Windowsを使用している場合は、Android/local.propertiesファイルのバックスラッシュとコロンをエスケープ(バックスラッシュを追加)してください。ない場合はそれを作成します

sdk.dir = C\:\\Android\\sdk
21
Sajjad Ashraf

LinuxディストリビューションでのSDKパスエラーの修正


プロジェクトは、指定されたパスを介してプロジェクト設定で設定されたSDKを見つけられないため、プロジェクトは正しい方向を指す必要があり、これを達成するためのいくつかのオプションがありますが、最初に正しいSDKフォルダーを見つけることから始めましょう。


SDKを見つける


パッケージマネージャーから


DebianベースのディストリビューションでカスタムPPAを介してJava 8 JREのようなパッケージベースのJREインストールを使用している場合、またはOpenJDKを使用すると、ディレクトリは/ usr/lib/jvm/Java-8-Oracle(または選択したバージョン)。このパスセットは、Java_HOME環境変数で見つけることができます。

$ echo $Java_HOME
 /usr/lib/jvm/Java-8-Oracle

手動ダウンロード


Java JRE/SDKダウンロードを使用してインストールした場合、フォルダーを配置した場所になります(例: / home /username/ jdk-8u121_1.8.(または同様のもの)。

スクリプトインストールでは、SDKを/ opt/Java-8-Oracleに追加することもできますが、これを書いている時点では、Javaインストール手順ではフォルダーの配置はあなたの手に委ねられています。


Android Studio 2.2


最後に、Android St​​udioを使用している場合、SDKは、StudioのSDKマネージャーからダウンロードしたSDKファイルを配置するように設定した場所に配置されます。 File> Settings> Appearance&Behavior> System Settings> Android SDKに移動すると、SDKの場所の設定を見つけることができます変更するオプションがあり、デフォルトのフォルダーは〜/ Android/Sdkです。

Android Studio SDK Path

SDKパスの設定

SDKの場所がわかったので、今度は反応ネイティブに知らせます。


オプション1:local.propertiesで設定


この方法は非常に簡単で、必要なのは次のフォルダーにファイルlocal.propertiesを作成することです。ここでProject_FolderはReact-Nativeアプリケーションのベースです。

Project_Folder/Android/App

Local.propertiesで、変数sdk.dirをSDKフォルダーのパスに設定します。

sdk.dir=/home/username/Android/Sdk

これは問題を解決する最も簡単な方法ですが、特に複数のプロジェクトで作業している場合は最善ではありません。すべてのプロジェクトについて、すべてのプロジェクトに対してこのファイルを作成する必要があります。フォルダーが変更された場合は、各プロジェクトのlocal.propertiesに対してこのファイルを変更する予定です。

ファイルを保存したら、react-native run-Androidコマンドを再実行します。


オプション2:環境変数を使用してフォルダーを設定する


もう1つのオプションは、SDKフォルダーを、React-Nativeがデフォルトで検索するローカル環境変数に設定することです。そのために、Android_HOMEパスを追加します。ボーナスとして、Androidツールを同じ場所に追加することもできます。ホームディレクトリ内の.bash_profileまたは.profileファイルにこれを追加する必要があります。これらは最後にロードされるため、他の設定が設定を上書きしないようにすることができます。これらはホームディレクトリにあるため、昇格した権限で編集する必要はありません。

**$ vim ~/.profile**  (use nano or pico if you prefer)

ファイルに次の行を追加して、SDKフォルダーを上記で見つけたフォルダーに置き換えます。例としてAndroid St​​udioフォルダーを使用します。

export Android_HOME="~/Android/Sdk"
export PATH=$PATH:~/Android/Sdk/tools:~/Android/Sdk/platform-tools

ファイルを保存してから、プロファイル設定を適用します。

$ source ~/.profile
$ echo $Android_HOME
/home/dbrown/Android/Sdk

Sdkフォルダーが正しく表示されたら、おめでとうございます!反応ネイティブコマンドを再実行し、アプリのビルドプロセスが続行されるのを確認します。


まだ問題がある場合


何らかの理由で、「>」というエラーが表示された場合:your/sdk/folderのハッシュ文字列「Android-23」でターゲットが見つかりませんでした。プロジェクトのビルドバージョンとインストールされているSDKのバージョンが一致することを確認します(React-Nativeのデフォルトは23.0.1)。デフォルトバージョンはProject_Folder/Android/app/buildにあります。 .gradle、およびbuildToolsVersionを検索します。もちろん、このファイルまたは_でバージョンを変更できますAndroid St​​udioはFile> Project Structureに移動して、Project SDK。自分が何をしているかを完全に把握していない限り、このバージョンを変更することはお勧めしません。

9
DBrown

Windowsをお使いの場合

1つの簡単な解決策は、SDKパスを環境変数リストに設定することです。

  1. Enviromnent変数に向かってください。 (あなたのPC>プロパティ)
  2. 新規作成 /システム変数
  3. 変数名 Android_HOME に設定します。
  4. 変数値 をAndroid Sdkの場所に設定します。
  5. OKを押します(3つのダイアログボックスに対して3回)

注意:

あなたのAndroid Sdkは一般的にに位置しています

C:\ Users\YourUserName\AppData\Local\Android\Sdk

端末は既存の環境変数をすべて保持しているので、必ず現在の端末を閉じてください。

8
Ozesh

MAC/Unixで始めるためにReact Native0.58のためのステップを更新しました

  • 端末でbash_profileを開く

nano〜/ .bash_profile

export Android_HOME = $ HOME/Library/Android/sdk export

PATH = $ PATH:$ Android_HOME/emulator export

PATH = $ PATH:$ Android_HOME/tools export

PATH = $ PATH:$ Android_HOME/tools/bin export

PATH = $ PATH:$ Android_HOME/platform-tools

Control+S to save
Control+X to exit
Y to save changes
  • 端末の変更を更新する

source ~/.bash_profile

  • パスを検証します。

echo $PATH

  • すべて問題ないか確認してください。

adb devices

8
Hitesh Sahu

正しいフルパスを書く必要があります。 '〜/ Library/Android/sdk'を使わないでください。

vi ~/.bashrc

export Android_HOME=/Users/{UserName}/Library/Android/sdk
export PATH=${PATH}:${Android_HOME}/tools
export PATH=${PATH}:${Android_HOME}/platform-tools

source ~/.bashrc
6
hoi

Ubuntuでは、Android Studioとは別にSDKを入手する必要があります 奇妙な パスはAndroid Studioでも機能しますが、React Nativeでは、local.propertiesというファイル名を作成する必要があります。

例えばinn ~/AwesomeProject/Androidで次の行を挿入してください。
sdk.dir=/path/to/sdk/in/your/computer

6
ConnelBLAZE

local.propertiesファイルをチェックしてください。

sdk.dir=C\:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk

フォーマットが適切かどうか

2
Makvin

Ubuntuを使用している場合は、React-nativeプロジェクトのAndroidディレクトリに移動してlocal.propertiesというファイルを作成し、Android sdkパスを次のように追加します。

sdk.dir = /home/[YOUR_USERNAME]/Android/Sdk
2
Keivan

私が見つけることができる最善の解決策は次のとおりです。

  1. あなたが選んだAndroid StudioとSDKをダウンロードしてください (あなたがそれを必要としていないと思っていても、apkファイルを解放し、Androidコードを手動で変更する必要があると信じて).
  2. [ファイル]> [新規]> [インポート]を選択して、反応するネイティブAndroidプロジェクトがある場所を指定します。
  3. 特定のSDKをダウンロードするように要求された場合は、同じSDKをダウンロードしてください。それはあなたに小冊子などを更新するようにあなたに頼むことができます...必要とされるところで更新し続けてください。
  4. あなたが既存のAndroid SDKを持っていて、あなたがそのバージョンを知っているなら、あなたがしなければならないのはあなたのAndroidプロジェクトのbuild.gradleの下でそのバージョンと一致することだけです。

これがgradleファイルの外観です。

enter image description here

マシンのセットアップがすべてうまくいっていて、Android Studioを使用してプロジェクトをコンパイルできるのであれば、react-native cli build Androidコマンドを使用してアプリケーションをビルドするのを妨げるものは何もありません。

このアプローチでは、SDKの問題を解決するだけでなく、Android開発のためのマシン設定に関連した多くの問題も解決します。インポートは自動的にSDKの場所を見つけてlocal.propertiesを作成します。それ故にあなたは手動介入を心配する必要はありません。

2
codebased

プロジェクトディレクトリに "Android"というフォルダがあり、その中にlocal.propertiesファイルがあります。ファイルを削除すると、ビルドは正常に実行されます。

1

適切なエミュレータとAndroidのバージョンがインストールされていることを確認してください。これで問題は解決しました。

1
Arel

Linuxユーザーのための

あなたのアプリはAndroid-sdkのパスを取得していないので、あなたが "local.properties"という名前のファイルを追加し、あなたのアプリフォルダの中に作成されたAndroidフォルダの中に保存する必要があります。 。

アプリを実行するには、local.propertiesファイル内に次の行を追加する必要があります。これは、Android-sdkのパスがシステム内のシステム内にあることです。

sdk.dir=/opt/Android-sdk/

react-native run-Androidコマンドを保存して再実行します。

_または_

端末を開くことができます

Sudo nano〜/ .bashrc

下のパスをファイルの末尾に貼り付けます

export Android_HOME = "/ opt/Android-sdk /"

その後、コンピュータを再起動して、もう一度react-native run-Androidを実行してください。

注: - set pathを.bashrcファイルに入れた場合は、local.propertiesファイルを作成する必要すらありません。

1
Yash Vekaria

お使いのシステムの他のAndroidプロジェクトlocal.propertiesをコピーして、動作するReactネイティブプロジェクトのAndroidフォルダに貼り付けます。

1
Rathore

これは私のために働きました。

私はUdemyでStephen GriderのReact Nativeを取っています、そして、学生の1人はこれをレクチャー50に投稿しました。

$ export "Android_HOME=/usr/local/opt/Android-sdk" >~/.bash_profile
1
Utah

Android studioプロジェクトを作成した場合、local.propertiesファイルがプロジェクトのルートディレクトリ内に作成されているのがわかります。反応性のあるネイティブプロジェクトを作成しても、そのファイルは作成されません。それで、あなたはそれを手動で作成しなければなりません。それにskd dirを追加する必要があります。だから(ルート上の)Androidフォルダ内に新しいファイルを作成します。そして、あなたのSDKパスをこのようにしてください。sdk.dir=D\:\\Android\\SDK\\Android_sdk_studio . 覚えておいてください:singleで\をdoubleで削除してください。上記と同じです。

1
Nouman Ghaffar

2つのgradleファイルがあります、 あなたのC:\ myapp\Android\build.gradleの中のものを変更してください そして親ディレクトリmyappにはありません。

23.0.1を私のケース25.0.0にインストールされているAndroidビルドツールのバージョンに置き換えます

エミュレータであなたのアプリを見るために 反応ネイティブの実行 - アンドロイド を実行してください。

0
P.Ranjan

私はWindows上にいて、PATH環境にあるかどうかにかかわらず、sdkパスを修正しなければなりませんでした。変数

sdk.dir=C:/Users/MY_USERNAME/AppData/Local/Android/Sdk

このファイルを変更しました:

MyProject\Android\local.properties
0
noob_admin

でAndroidのプロジェクト でプロジェクトのAndroidフォルダを開くだけです。 Androidスタジオは必要なファイル(local.properties)を作成し、必要なAndroidを実行するためのSDKバージョンをダウンロードします。

0
Rasoul Miri