2016-02-01 13 views
12

React Nativeを使い始める。私はAndroid SDK、Java SDK、およびAndroidの依存関係をインストールしました。ターミナルでデモアプリケーションを実行すると、次のエラーが表示されます。React Native - java.lang.RuntimeException:SDKの場所が見つかりません。 local.properties内のsdk.dirを使用して場所を定義します。

~ emulator @galaxy 
HAXM is working and emulator runs in fast virt mode 
emulator: UpdateChecker: skipped version check 

は今、私はそれを実行します:

は、私は私のギャラクシーエミュレータを実行していません

~ react-native run-android 
Starting JS server... 
Building and installing the app on the device (cd android && ./gradlew installDebug)... 
Failed to notify ProjectEvaluationListener.afterEvaluate(), but primary configuration failure takes precedence. 
java.lang.RuntimeException: SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable. 
    at com.android.build.gradle.internal.SdkHandler.getAndCheckSdkFolder(SdkHandler.java:102) 
    at com.android.build.gradle.internal.SdkHandler.getSdkLoader(SdkHandler.java:112) 
    at com.android.build.gradle.internal.SdkHandler.initTarget(SdkHandler.java:86) 
    at com.android.build.gradle.BasePlugin.ensureTargetSetup(BasePlugin.groovy:507) 
    at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.groovy:455) 
    at com.android.build.gradle.BasePlugin$_createTasks_closure13_closure17.doCall(BasePlugin.groovy:415) 
    at com.android.build.gradle.BasePlugin$_createTasks_closure13_closure17.doCall(BasePlugin.groovy) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324) 
    at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:292) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1015) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:54) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112) 
    at com.android.build.gradle.internal.profile.SpanRecorders$2.call(SpanRecorders.groovy:52) 
    at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:48) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSite.invoke(PojoMetaMethodSite.java:189) 
    at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:124) 
    at com.android.build.gradle.internal.profile.SpanRecorders.record(SpanRecorders.groovy:54) 
    at com.android.build.gradle.BasePlugin$_createTasks_closure13.doCall(BasePlugin.groovy:414) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324) 
    at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:292) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1015) 
    at groovy.lang.Closure.call(Closure.java:423) 
    at org.gradle.listener.ClosureBackedMethodInvocationDispatch.dispatch(ClosureBackedMethodInvocationDispatch.java:40) 
    at org.gradle.listener.ClosureBackedMethodInvocationDispatch.dispatch(ClosureBackedMethodInvocationDispatch.java:25) 
    at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:87) 
    at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:31) 
    at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93) 
    at com.sun.proxy.$Proxy11.afterEvaluate(Unknown Source) 
    at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:67) 
    at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:61) 
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:487) 
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:85) 
    at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:47) 
    at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35) 
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:129) 
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106) 
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86) 
    at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:90) 
    at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28) 
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35) 
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:41) 
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:28) 
    at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:50) 
    at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:27) 
    at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:40) 
    at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:169) 
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237) 
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210) 
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35) 
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24) 
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206) 
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169) 
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33) 
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22) 
    at org.gradle.launcher.Main.doAction(Main.java:33) 
    at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54) 
    at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35) 
    at org.gradle.launcher.GradleMain.main(GradleMain.java:23) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:30) 
    at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:127) 
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61) 

FAILURE: Build failed with an exception. 

* Where: 
Build file '/Users/jonathanbello/Documents/Personal-Projects/Javascript/React-Native/WeatherApp/android/app/build.gradle' line: 102 

* 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. 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug                    option to get more log output. 

BUILD FAILED 

Total time: 7.565 secs 
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 

システム: - OSXヨセミテ - ノードv 5.5

答えて

0

を使用している場合Android Studioの場合、以下の手順に従います。

  • ゴー「ロケーションパス」を追加して再試行してくださいSDKの場所]タブで>プロジェクト構造>
  • を提出します。

    まずチェック:アンドロイドスタジオなし

  • のLinuxでは
+0

を私は、Android Studioを使用しますが、ダウンロードされていませんよ。プロジェクト構造をクリックできません。 –

0

あなたはすでにダウンロードとAndroid SDKを解凍し、実際の開発SDKをインストールするには、Androidのコマンドを実行していますか?

ビルドと実行時にまだそれが見つかりません。それで、問題は、ファイルlocal.propertiesが、gradbがそれを見つけてadbをビルドして実行するのと同じディレクトリの中にある必要があるということです。

私のプロジェクトでは、local.propertiesファイルをMyprojectname/android/folderに置く必要があり、作業が始まりました。

私は、ファイル内の私のパスをダウンロードするためにSDKを解凍していたように、このです:sdk.dir = /ホーム/ USER /ダウンロード/アンドロイド-SDK-linuxの

6

は、ここで私は、Androidと反応し、ネイティブの仕事を作る方法ですマックOSXで:

  1. ダウンロードAndroidスタジオと、それを介した更新のAndroid SDK、 https://developer.android.com/studio/index.html#downloads
  2. .base_profile export ANDROID_HOME=/Users/UserName/Library/Android/sdk export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

  3. 0123にPATHを追加
  4. local.propertiesファイルをproject_name/android/フォルダに入れます。

  5. local.propertiesを編集し、sdk.dir=/Users/UserName/Library/Android/sdkを追加します。

  6. androidコマンドを実行して、必要なパッケージを更新します。 RN 0.32の場合 、その

    • ツール/ SDKのビルドツール23.0.1
    • アンドロイド6。0(API 23)
    • エクストラ
    • のAndroidサポートライブラリ
  7. エミュレータを開くために実行アンドロイドスタジオやandroid avdコマンド

  8. あなたがアンドロイドでアプリの赤い画面を見たらreact-native run-android
  9. を行い、ブリッジサーバーを起動するにはreact-native startを実行する
12

Androidメーカー:ファイル - >プロジェクト構造 - > AndroidのSDK場所

コピーのAndroid SDKのパスあなたPROJECT_NAMEで enter image description here

  1. - >アンドロイド - >ファイルlocal.propertiesに
  2. オープンlocal.propertiesを作成します。
  3. 書き込みsdk.dir =/Users/Ashok/Library/Android/sdk
  4. 保存してください。
  5. プロジェクトのルートディレクトリreact-native run-androidにあります。
+1

私は愚かでしたが、** local.properties **ファイルをルートフォルダに入れましたが、** Android **フォルダに入れました。それが私に同じエラーがあった理由かもしれません。 –

+0

@Ashok .... Daaamn、これはfacebookのチュートリアルを始めるのに参加していたはずです。ありがとうlooooot! – Woppi

+0

haha​​ありがとう:-) –

0

ラインの下に追加します。ご使用の環境変数に

nano ~/.bash_profile 

をアンドロイドスタジオ・パスを追加します。

export ANDROID_HOME=/YOUR_PATH_TO/android-sdk 
export PATH=$ANDROID_HOME/platform-tools:$PATH 
export PATH=$ANDROID_HOME/tools:$PATH 
+1

私はこれをすべて行いました、local.properiesファイルを作成しましたが、まだ動作しません。 – HariRam

関連する問題