Android Build Failed


#1

I am trying to get started with NativeScript on a Mac but I am having issues building for Android, can someone point me in the right direction on how to solve this error. Please let me know what additional information I can provide. Here is the terminal output:

Tylers-MacBook-Air:Groceries tyleraustin$ tns build android
Executing before-prepare hook from /Users/tyleraustin/Documents/GitHub/Groceries/hooks/before-prepare/nativescript-dev-android-snapshot.js
Executing before-prepare hook from /Users/tyleraustin/Documents/GitHub/Groceries/hooks/before-prepare/nativescript-dev-typescript.js
Found peer TypeScript 2.2.2
Preparing project...
Successfully prepared plugin nativescript-angular for android.
Successfully prepared plugin nativescript-theme-core for android.
Successfully prepared plugin tns-core-modules for android.
Successfully prepared plugin nativescript-intl for android.
Successfully prepared plugin tns-core-modules-widgets for android.
Parallel execution is an incubating feature.

:config phase:  createDefaultIncludeFiles
        +found plugins: tns-core-modules-widgets

:config phase:  createPluginsConfigFile
         Creating product flavors include.gradle file in /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/configurations folder...

:config phase:  pluginExtend
        +applying configuration from: /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/configurations/include.gradle
        +applying configuration from: /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/configurations/tns-core-modules-widgets/include.gradle

:config phase:  addAarDependencies
        +adding dependency: /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/libs/aar/widgets-release.aar
The JavaCompile.setDependencyCacheDir() method has been deprecated and is scheduled to be removed in Gradle 4.0.
The TaskInputs.source(Object) method has been deprecated and is scheduled to be removed in Gradle 4.0. Please use TaskInputs.file(Object).skipWhenEmpty() instead.
Incremental java compilation is an incubating feature.
The Task.leftShift(Closure) method has been deprecated and is scheduled to be removed in Gradle 5.0. Please use Task.doLast(Action) instead.
        at build_5mdwt6xy1t0ugryxvjhya923k.run(/Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/build-tools/android-static-binding-generator/build.gradle:126)
:asbg:clean
:deleteMetadata
:deleteFlavors
:deleteConfigurations
:deleteGeneratedBindings UP-TO-DATE
:clean

BUILD SUCCESSFUL

Total time: 3.896 secs
Project successfully prepared (android)
Executing after-prepare hook from /Users/tyleraustin/Documents/GitHub/Groceries/hooks/after-prepare/nativescript-dev-android-snapshot.js
Building project...
Parallel execution is an incubating feature.

:config phase:  createDefaultIncludeFiles
        +found plugins: tns-core-modules-widgets
         + creating include.gradle file for /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/configurations/tns-core-modules-widgets
Renaming plugin directory to flavor name: /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/src/tns-core-modules-widgets -> /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/src/F0

:config phase:  createPluginsConfigFile
         Creating product flavors include.gradle file in /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/configurations folder...

:config phase:  pluginExtend
        +applying configuration from: /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/configurations/include.gradle
        +applying configuration from: /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/configurations/tns-core-modules-widgets/include.gradle

:config phase:  addAarDependencies
        +adding dependency: /Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/libs/aar/widgets-release.aar
The JavaCompile.setDependencyCacheDir() method has been deprecated and is scheduled to be removed in Gradle 4.0.
The TaskInputs.source(Object) method has been deprecated and is scheduled to be removed in Gradle 4.0. Please use TaskInputs.file(Object).skipWhenEmpty() instead.
Incremental java compilation is an incubating feature.
The Task.leftShift(Closure) method has been deprecated and is scheduled to be removed in Gradle 5.0. Please use Task.doLast(Action) instead.
        at build_5mdwt6xy1t0ugryxvjhya923k.run(/Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/build-tools/android-static-binding-generator/build.gradle:126)
:asbg:generateInterfaceNamesList
:preBuild UP-TO-DATE
:preF0DebugBuild UP-TO-DATE
:checkF0DebugManifest
:preF0ReleaseBuild UP-TO-DATE
:prepareComAndroidSupportAnimatedVectorDrawable2600Alpha1Library
:prepareComAndroidSupportAppcompatV72600Alpha1Library
:asbg:traverseJsFiles
:asbg:runAstParser
Running full build
:prepareComAndroidSupportDesign2600Alpha1Library
:prepareComAndroidSupportRecyclerviewV72600Alpha1Library
:prepareComAndroidSupportSupportCompat2600Alpha1Library
:prepareComAndroidSupportSupportCoreUi2600Alpha1Library
:prepareComAndroidSupportSupportCoreUtils2600Alpha1Library
:prepareComAndroidSupportSupportFragment2600Alpha1Library
:prepareComAndroidSupportSupportMediaCompat2600Alpha1Library
:prepareComAndroidSupportSupportV42600Alpha1Library
:prepareComAndroidSupportSupportVectorDrawable2600Alpha1Library
:prepareComAndroidSupportTransition2600Alpha1Library
:prepareGroceriesRuntimeUnspecifiedLibrary
finished with reading lines with js files
:prepareWidgetsReleaseLibrary
:prepareF0DebugDependencies
:compileF0DebugAidl
:compileF0DebugRenderscript
:generateF0DebugBuildConfig
:cleanLocalAarFiles
:ensureMetadataOutDir
:collectAllJars
:setProperties
:generateTypescriptDefinitions SKIPPED
:copyTypings SKIPPED
:generateF0DebugResValues
:generateF0DebugResources
:mergeF0DebugResources
:processF0DebugManifest
:processF0DebugResources
:generateF0DebugSources
:incrementalF0DebugJavaCompilationSafeguard
:compileF0DebugNdk UP-TO-DATE
:mergeF0DebugShaders
:compileF0DebugShaders
:generateF0DebugAssets
:mergeF0DebugAssets
:mergeF0DebugJniLibFolders
:transformNative_libsWithMergeJniLibsForF0Debug
:processF0DebugJavaRes UP-TO-DATE
:transformResourcesWithMergeJavaResForF0Debug
:validateSigningF0Debug
:asbg:generateBindings
Exception in thread "main" java.lang.NullPointerException
        at org.nativescript.staticbindinggenerator.Generator.readDir(Generator.java:289)
        at org.nativescript.staticbindinggenerator.Generator.readClasses(Generator.java:244)
        at org.nativescript.staticbindinggenerator.Generator.<init>(Generator.java:50)
        at org.nativescript.staticbindinggenerator.Generator.<init>(Generator.java:44)
        at org.nativescript.staticbindinggenerator.Main.main(Main.java:15)
:asbg:generateBindings FAILED

FAILURE: Build failed with an exception.

* Where:
Build file '/Users/tyleraustin/Documents/GitHub/Groceries/platforms/android/build-tools/android-static-binding-generator/build.gradle' line: 254

* What went wrong:
Execution failed for task ':asbg:generateBindings'.
> Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1

* 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: 14.391 secs
Command ./gradlew failed with exit code 1

#2

It is possible that no files have been transferred to the project directory during the prepare step, and then the native build failed as a result. I would recommend making sure that the CLI is properly installed, remove and re-add the android platform, then try to build again.

issue on GitHub - https://github.com/NativeScript/android-runtime/issues/833


#3

Thanks Pete,

I will give that a shot and let you know if it resolved the issue or not. I am currently in an area of the world with really poor internet capabilities (at best 512 kb/sec) and the downloading sometimes errors out or a lot of packets get dropped.


#4

I uninstalled nativescript via npm and then went to reinstall. I got the below output. I had a install of the Android SDK already installed on my Mac. I am going to remove it and then run the ruby command to have the cli install it. I have also had an issue with cocoa pods it seems. Does this have anything to do with the new release of Android Oreo and the default sdk dependencies that comes with?

Tylers-MacBook-Air:Groceries tyleraustin$ sudo npm install -g nativescript
Password:
npm WARN deprecated node-uuid@1.4.7: Use uuid module instead

> nativescript@3.1.3 preuninstall /usr/local/lib/node_modules/nativescript
> node preuninstall.js

Failed to complete all pre-uninstall steps.
/usr/local/bin/tns -> /usr/local/lib/node_modules/nativescript/bin/tns
/usr/local/bin/nativescript -> /usr/local/lib/node_modules/nativescript/bin/tns

> nativescript@3.1.3 postinstall /usr/local/lib/node_modules/nativescript
> node postinstall.js

WARNING: adb from the Android SDK is not installed or is not configured properly.
For Android-related operations, the NativeScript CLI will use a built-in version of adb.
To avoid possible issues with the native Android emulator, Genymotion or connected
Android devices, verify that you have installed the latest Android SDK and
its dependencies as described in http://developer.android.com/sdk/index.html#Requirements

TIP: To avoid setting up the necessary environment variables, you can use the Homebrew package manager to install the Android SDK and its dependencies.

WARNING: The Android SDK is not installed or is not configured properly.
You will not be able to build your projects for Android and run them in the native emulator.
To be able to build for Android and run apps in the native emulator, verify that you have
installed the latest Android SDK and its dependencies as described in http://developer.android.com/sdk/index.html#Requirements

TIP: To avoid setting up the necessary environment variables, you can use the Homebrew package manager to install the Android SDK and its dependencies.

Verifying CocoaPods. This may take more than a minute, please be patient.
  ◟ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠧ normalizeTree: sill install lo  ◜ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠇ normalizeTree: sill install lo  ◠ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠙ normalizeTree: sill install lo  ◝ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠙ normalizeTree: sill install lo  ◞ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠙ normalizeTree: sill install lo  ◡ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠹ normalizeTree: sill install lo  ◟ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠹ normalizeTree: sill install lo  ◜ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠹ normalizeTree: sill install lo  ◠ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠹ normalizeTree: sill install lo  ◝ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠸ normalizeTree: sill install lo  ◞ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠸ normalizeTree: sill install lo  ◡ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠸ normalizeTree: sill install lo  ◟ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠼ normalizeTree: sill install lo  ◜ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠼ normalizeTree: sill install lo  ◠ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠼ normalizeTree: sill install lo  ◝ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠼ normalizeTree: sill install lo  ◞ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠴ normalizeTree: sill install lo  ◡ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠙ normalizeTree: sill install lo  ◟ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠙ normalizeTree: sill install lo  ◜ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠹ normalizeTree: sill install lo  ◠ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠹ normalizeTree: sill install lo  ◝ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠹ normalizeTree: sill install lo  ◞ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠹ normalizeTree: sill install lo  ◡ Installing iOS runtime.⸨░░░░░░░░░░░░░░░░░░⸩ ⠸ normalizeTree: sill install lo  ◟ Installing iOS runtime.⸨   ░░░░░░░░░░░░░░░⸩ ⠹ cloneCurrentTree: sill cloneCu  ◜ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠼ loadRequestedDeps: sill instal  ◠ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠋ loadRequestedDeps: sill instal  ◝ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◞ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◡ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◟ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◜ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◠ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◝ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◞ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◡ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◟ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◜ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◠ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◝ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◞ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instal  ◡ Installing iOS runtime.⸨    ░░░░░░░░░░░░░░⸩ ⠦ loadRequestedDeps: sill instalnpm WARN locking Error: EACCES: permission denied, open '/Users/tyleraustin/.npm/_locks/staging-1441109bd3964b61.lock'
npm WARN locking     at Error (native)
npm WARN locking  /Users/tyleraustin/.npm/_locks/staging-1441109bd3964b61.lock failed { Error: EACCES: permission denied, open '/Users/tyleraustin/.npm/_locks/staging-1441109bd3964b61.lock'
npm WARN locking     at Error (native)
npm WARN locking   errno: -13,
npm WARN locking   code: 'EACCES',
npm WARN locking   syscall: 'open',
npm WARN locking   path: '/Users/tyleraustin/.npm/_locks/staging-1441109bd3964b61.lock' }
nativescript-check-cocoapods@0.0.1 /usr/local/lib/node_modules/nativescript/nativescript-check-cocoapods117726-17912-17zo2uf.9or6l2fbt9
└── tns-ios@3.1.0 

npm WARN nativescript-check-cocoapods@0.0.1 No description
npm WARN nativescript-check-cocoapods@0.0.1 No repository field.
npm WARN nativescript-check-cocoapods@0.0.1 No license field.
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "tns-ios" "--global" "false" "--production" "--save" "--ignoreScripts" "--ignore-scripts"
npm ERR! node v6.11.2
npm ERR! npm  v3.10.10
npm ERR! path /Users/tyleraustin/.npm/_locks/staging-1441109bd3964b61.lock
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall open

npm ERR! Error: EACCES: permission denied, open '/Users/tyleraustin/.npm/_locks/staging-1441109bd3964b61.lock'
npm ERR!     at Error (native)
npm ERR!  { Error: EACCES: permission denied, open '/Users/tyleraustin/.npm/_locks/staging-1441109bd3964b61.lock'
npm ERR!     at Error (native)
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'open',
npm ERR!   path: '/Users/tyleraustin/.npm/_locks/staging-1441109bd3964b61.lock' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:
npm ERR!     /usr/local/lib/node_modules/nativescript/nativescript-check-cocoapods117726-17912-17zo2uf.9or6l2fbt9/npm-debug.log
WARNING: There was a problem with CocoaPods
Verify that CocoaPods are configured properly.
The ANDROID_HOME environment variable is not set or it points to a non-existent directory. You will not be able to perform any build-related operations for Android.
To be able to perform Android build-related operations, set the ANDROID_HOME variable to point to the root of your Android SDK installation directory.

Cannot find a compatible Android SDK for compilation. To be able to build for Android, install Android SDK 22 or later.
Run $ sdkmanager to manage your Android SDK versions.

You need to have the Android SDK Build-tools installed on your system. You can install any version in the following range: '>=23 <=26'.
Run $ sdkmanager from your command-line to install required Android Build Tools. In case you already have them installed, make sure ANDROID_HOME environment variable is set correctly.

You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.
Run $ sdkmanager to manage the Android Support Repository. In case you already have it installed, make sure ANDROID_HOME environment variable is set correctly.

#5

Still having some issues with the NativeScript installation. Can someone please assist me?

I uninstalled everything except Xcode and then installed nativescript via then ran the ruby command for Mac. I am able to build to iOS however I cannot build to android.

This is the console out put when I run tns doctor --log trace:

Last login: Sun Aug 27 12:11:19 on console
Tylers-MacBook-Air:~ tyleraustin$ tns doctor
Verifying CocoaPods. This may take more than a minute, please be patient.
◟ Installing iOS runtime.⸨             ░░░░░⸩ ⠧ extract:tns-ios: sill doParallnativescript-check-cocoapods@0.0.1 /private/var/folders/vm/7my0fjjx4vqfynwwfwvp314m0000gn/T/nativescript-check-cocoapods117727-485-1aimsen.8bwnze61or
└── tns-ios@3.1.0 

npm WARN nativescript-check-cocoapods@0.0.1 No description
npm WARN nativescript-check-cocoapods@0.0.1 No repository field.
npm WARN nativescript-check-cocoapods@0.0.1 No license field.
  ◝ Verifying CocoaPods. This may take some time, please be patient.^C
Tylers-MacBook-Air:~ tyleraustin$ 
Tylers-MacBook-Air:~ tyleraustin$ 
Tylers-MacBook-Air:~ tyleraustin$ tns doctor --log trace
Loading extensions.
execFile: /usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb "help"
Exec uname -a 
 stdout: Darwin Tylers-MacBook-Air.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64
 
 stderr: 
Exec npm -v 
 stdout: 3.10.10
 
 stderr: 
spawn: java "-version"
Exec node-gyp -v 
 stdout:  
 stderr: /bin/sh: node-gyp: command not found

Exec xcodebuild -version 
 stdout: Xcode 8.3.3
Build version 8E3004b
 
 stderr: 
Exec gem which xcodeproj 
 stdout: /Library/Ruby/Gems/2.0.0/gems/xcodeproj-1.5.1/lib/xcodeproj.rb
 
 stderr: 
Exec pod --version 
 stdout: 1.3.1
 
 stderr: 
Exec '/usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb' version 
 stdout: Android Debug Bridge version 1.0.39
Revision 3db08f2c6889-android
Installed as /usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb
 
 stderr: 
spawn: /usr/local/Caskroom/android-sdk/3859397,26.0.1/emulator/emulator "-help"
Result when throw error is false:
{ stdout: 'Android Emulator usage: emulator [options] [-qemu args]\n  options:\n    -list-avds                     list available AVDs\n    -sysdir <dir>                  search for system disk images in <dir>\n    -system <file>                 read initial system image from <file>\n    -vendor <file>                 read initial vendor image from <file>\n    -writable-system               make system & vendor image writable after \'adb remount\'\n    -datadir <dir>                 write user data into <dir>\n    -kernel <file>                 use specific emulated kernel\n    -ramdisk <file>                ramdisk image (default <system>/ramdisk.img\n    -image <file>                  obsolete, use -system <file> instead\n    -initdata <file>               same as \'-init-data <file>\'\n    -data <file>                   data image (default <datadir>/userdata-qemu.img\n    -logcat-output <file>          output file of logcat(default none)\n    -partition-size <size>         system/data partition size in MBs\n    -cache <file>                  cache partition image (default is temporary file)\n    -cache-size <size>             cache partition size in MBs\n    -no-cache                      disable the cache partition\n    -nocache                       same as -no-cache\n    -sdcard <file>                 SD card image (default <datadir>/sdcard.img\n    -snapstorage <file>            file that contains all state snapshots (default <datadir>/snapshots.img)\n    -no-snapstorage                do not mount a snapshot storage file (this disables all snapshot functionality)\n    -snapshot <name>               name of snapshot within storage file for auto-start and auto-save (default \'default-boot\')\n    -no-snapshot                   perform a full boot and do not auto-save, but qemu vmload and vmsave operate on snapstorage\n    -no-snapshot-save              do not auto-save to snapshot on exit: abandon changed state\n    -no-snapshot-load              do not auto-start from snapshot: perform a full boot\n    -snapshot-list                 show a list of available snapshots\n    -no-snapshot-update-time       do not do try to correct snapshot time on restore\n    -wipe-data                     reset the user data image (copy it from initdata)\n    -avd <name>                    use a specific android virtual device\n    -skindir <dir>                 search skins in <dir> (default <system>/skins)\n    -skin <name>                   select a given skin\n    -no-skin                       deprecated: create an AVD with no skin instead\n    -noskin                        same as -no-skin\n    -memory <size>                 physical RAM size in MBs\n    -cores <number>                Set number of CPU cores to emulator\n    -accel <mode>                  Configure emulation acceleration\n    -no-accel                      Same as \'-accel off\'\n    -ranchu                        Use new emulator backend instead of the classic one\n    -engine <engine>               Select engine. auto|classic|qemu2\n    -netspeed <speed>              maximum network download/upload speeds\n    -netdelay <delay>              network latency emulation\n    -netfast                       disable network shaping\n    -code-profile <name>           enable code profiling\n    -show-kernel                   display kernel messages\n    -shell                         enable root shell on current terminal\n    -no-jni                        disable JNI checks in the Dalvik runtime\n    -nojni                         same as -no-jni\n    -logcat <tags>                 enable logcat output with given tags\n    -no-audio                      disable audio support\n    -noaudio                       same as -no-audio\n    -audio <backend>               use specific audio backend\n    -radio <device>                redirect radio modem interface to character device\n    -port <port>                   TCP port that will be used for the console\n    -ports <consoleport>,<adbport> TCP ports used for the console and adb bridge\n    -onion <image>                 use overlay PNG image over screen\n    -onion-alpha <%age>            specify onion-skin translucency\n    -onion-rotation 0|1|2|3        specify onion-skin rotation\n    -dpi-device <dpi>              specify device\'s resolution in dpi (default 165)\n    -scale <scale>                 scale emulator window (deprecated)\n    -http-proxy <proxy>            make TCP connections through a HTTP/HTTPS proxy\n    -timezone <timezone>           use this timezone instead of the host\'s default\n    -dns-server <servers>          use this DNS server(s) in the emulated system\n    -cpu-delay <cpudelay>          throttle CPU emulation\n    -no-boot-anim                  disable animation for faster boot\n    -no-window                     disable graphical window display\n    -version                       display emulator version number\n    -report-console <socket>       report console port to remote socket\n    -gps <device>                  redirect NMEA GPS to character device\n    -shell-serial <device>         specific character device for root shell\n    -tcpdump <file>                capture network packets to file\n    -bootchart <timeout>           enable bootcharting\n    -charmap <file>                use specific key character map\n    -studio-params <file>          used by Android Studio to provide parameters\n    -prop <name>=<value>           set system property on boot\n    -shared-net-id <number>        join the shared network, using IP address 10.1.2.<number>\n    -nand-limits <nlimits>         enforce NAND/Flash read/write thresholds\n    -gpu <mode>                    set hardware OpenGLES emulation mode\n    -camera-back <mode>            set emulation mode for a camera facing back\n    -camera-front <mode>           set emulation mode for a camera facing front\n    -webcam-list                   lists web cameras available for emulation\n    -screen <mode>                 set emulated screen mode\n    -force-32bit                   always use 32-bit emulator\n    -selinux <disabled|permissive> Set SELinux to either disabled or permissive mode\n    -unix-pipe <path>              Add <path> to the list of allowed Unix pipes\n    -fixed-scale                   Use fixed 1:1 scale for the initial emulator window.\n    -wait-for-debugger             Pause on launch and wait for a debugger process to attach before resuming\n    -skip-adb-auth                 Skip adb authentication dialogue\n    -metrics-to-console            Enable usage metrics and print the messages to stdout\n    -metrics-to-file <file>        Enable usage metrics and write the messages into specified file\n\n     -qemu args...                 pass arguments to qemu\n     -qemu -h                      display qemu help\n\n     -verbose                      same as \'-debug-init\'\n     -debug <tags>                 enable/disable debug messages\n     -debug-<tag>                  enable specific debug messages\n     -debug-no-<tag>               disable specific debug messages\n\n     -help                         print this help\n     -help-<option>                print option-specific help\n\n     -help-disk-images             about disk images\n     -help-debug-tags              debug tags for -debug <tags>\n     -help-char-devices            character <device> specification\n     -help-environment             environment variables\n     -help-virtual-device          virtual device management\n     -help-sdk-images              about disk images when using the SDK\n     -help-build-images            about disk images when building Android\n     -help-all                     prints all help content\n\n',
  stderr: '',
  exitCode: 0 }
The result of checking is Android Emulator installed is:
- stdout: Android Emulator usage: emulator [options] [-qemu args]
  options:
    -list-avds                     list available AVDs
    -sysdir <dir>                  search for system disk images in <dir>
    -system <file>                 read initial system image from <file>
    -vendor <file>                 read initial vendor image from <file>
    -writable-system               make system & vendor image writable after 'adb remount'
    -datadir <dir>                 write user data into <dir>
    -kernel <file>                 use specific emulated kernel
    -ramdisk <file>                ramdisk image (default <system>/ramdisk.img
    -image <file>                  obsolete, use -system <file> instead
    -initdata <file>               same as '-init-data <file>'
    -data <file>                   data image (default <datadir>/userdata-qemu.img
    -logcat-output <file>          output file of logcat(default none)
    -partition-size <size>         system/data partition size in MBs
    -cache <file>                  cache partition image (default is temporary file)
    -cache-size <size>             cache partition size in MBs
    -no-cache                      disable the cache partition
    -nocache                       same as -no-cache
    -sdcard <file>                 SD card image (default <datadir>/sdcard.img
    -snapstorage <file>            file that contains all state snapshots (default <datadir>/snapshots.img)
    -no-snapstorage                do not mount a snapshot storage file (this disables all snapshot functionality)
    -snapshot <name>               name of snapshot within storage file for auto-start and auto-save (default 'default-boot')
    -no-snapshot                   perform a full boot and do not auto-save, but qemu vmload and vmsave operate on snapstorage
    -no-snapshot-save              do not auto-save to snapshot on exit: abandon changed state
    -no-snapshot-load              do not auto-start from snapshot: perform a full boot
    -snapshot-list                 show a list of available snapshots
    -no-snapshot-update-time       do not do try to correct snapshot time on restore
    -wipe-data                     reset the user data image (copy it from initdata)
    -avd <name>                    use a specific android virtual device
    -skindir <dir>                 search skins in <dir> (default <system>/skins)
    -skin <name>                   select a given skin
    -no-skin                       deprecated: create an AVD with no skin instead
    -noskin                        same as -no-skin
    -memory <size>                 physical RAM size in MBs
    -cores <number>                Set number of CPU cores to emulator
    -accel <mode>                  Configure emulation acceleration
    -no-accel                      Same as '-accel off'
    -ranchu                        Use new emulator backend instead of the classic one
    -engine <engine>               Select engine. auto|classic|qemu2
    -netspeed <speed>              maximum network download/upload speeds
    -netdelay <delay>              network latency emulation
    -netfast                       disable network shaping
    -code-profile <name>           enable code profiling
    -show-kernel                   display kernel messages
    -shell                         enable root shell on current terminal
    -no-jni                        disable JNI checks in the Dalvik runtime
    -nojni                         same as -no-jni
    -logcat <tags>                 enable logcat output with given tags
    -no-audio                      disable audio support
    -noaudio                       same as -no-audio
    -audio <backend>               use specific audio backend
    -radio <device>                redirect radio modem interface to character device
    -port <port>                   TCP port that will be used for the console
    -ports <consoleport>,<adbport> TCP ports used for the console and adb bridge
    -onion <image>                 use overlay PNG image over screen
    -onion-alpha <%age>            specify onion-skin translucency
    -onion-rotation 0|1|2|3        specify onion-skin rotation
    -dpi-device <dpi>              specify device's resolution in dpi (default 165)
    -scale <scale>                 scale emulator window (deprecated)
    -http-proxy <proxy>            make TCP connections through a HTTP/HTTPS proxy
    -timezone <timezone>           use this timezone instead of the host's default
    -dns-server <servers>          use this DNS server(s) in the emulated system
    -cpu-delay <cpudelay>          throttle CPU emulation
    -no-boot-anim                  disable animation for faster boot
    -no-window                     disable graphical window display
    -version                       display emulator version number
    -report-console <socket>       report console port to remote socket
    -gps <device>                  redirect NMEA GPS to character device
    -shell-serial <device>         specific character device for root shell
    -tcpdump <file>                capture network packets to file
    -bootchart <timeout>           enable bootcharting
    -charmap <file>                use specific key character map
    -studio-params <file>          used by Android Studio to provide parameters
    -prop <name>=<value>           set system property on boot
    -shared-net-id <number>        join the shared network, using IP address 10.1.2.<number>
    -nand-limits <nlimits>         enforce NAND/Flash read/write thresholds
    -gpu <mode>                    set hardware OpenGLES emulation mode
    -camera-back <mode>            set emulation mode for a camera facing back
    -camera-front <mode>           set emulation mode for a camera facing front
    -webcam-list                   lists web cameras available for emulation
    -screen <mode>                 set emulated screen mode
    -force-32bit                   always use 32-bit emulator
    -selinux <disabled|permissive> Set SELinux to either disabled or permissive mode
    -unix-pipe <path>              Add <path> to the list of allowed Unix pipes
    -fixed-scale                   Use fixed 1:1 scale for the initial emulator window.
    -wait-for-debugger             Pause on launch and wait for a debugger process to attach before resuming
    -skip-adb-auth                 Skip adb authentication dialogue
    -metrics-to-console            Enable usage metrics and print the messages to stdout
    -metrics-to-file <file>        Enable usage metrics and write the messages into specified file

     -qemu args...                 pass arguments to qemu
     -qemu -h                      display qemu help

     -verbose                      same as '-debug-init'
     -debug <tags>                 enable/disable debug messages
     -debug-<tag>                  enable specific debug messages
     -debug-no-<tag>               disable specific debug messages

     -help                         print this help
     -help-<option>                print option-specific help

     -help-disk-images             about disk images
     -help-debug-tags              debug tags for -debug <tags>
     -help-char-devices            character <device> specification
     -help-environment             environment variables
     -help-virtual-device          virtual device management
     -help-sdk-images              about disk images when using the SDK
     -help-build-images            about disk images when building Android
     -help-all                     prints all help content


- stderr: 
Exec mono --version 
 stdout:  
 stderr: /bin/sh: mono: command not found

Exec git --version 
 stdout: git version 2.14.1
 
 stderr: 
Exec gradle -v 
 stdout:  
 stderr: /bin/sh: gradle: command not found

Exec "/Library/Java/Home/bin/javac" -version 
 stdout:  
 stderr: javac 1.8.0_144

System information:
{ procInfo: 'nativescript/3.1.3',
  platform: 'darwin',
  os: 'Darwin Tylers-MacBook-Air.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64\n',
  shell: '/bin/bash',
  dotNetVer: null,
  procArch: 'x64',
  nodeVer: 'v6.11.2',
  npmVer: '3.10.10',
  javaVer: '1.8.0',
  nodeGypVer: null,
  xcodeVer: 'Xcode 8.3.3\nBuild version 8E3004b\n',
  xcodeprojGemLocation: '/Library/Ruby/Gems/2.0.0/gems/xcodeproj-1.5.1/lib/xcodeproj.rb\n',
  itunesInstalled: true,
  cocoapodVer: '1.3.1',
  adbVer: 'Android Debug Bridge version 1.0.39',
  emulatorInstalled: true,
  monoVer: null,
  gitVer: '2.14.1',
  gradleVer: null,
  javacVersion: '1.8.0_144' }
Looking for project in '/Users/tyleraustin'
Looking for project in '/Users'
Looking for project in '/'
No project found at or above '/Users/tyleraustin'.
Unable to find project. projectDir: null, options.path: undefined, /Users/tyleraustin
No project found at or above '%s' and neither was a --path specified.
Initializing analytics statuses.
Analytics statuses: 
{ TrackFeatureUsage: 0, TrackExceptions: 0 }
Trying to track feature 'CLI' with value 'doctor'.
AnalyticsInstallationID: f18ec462-f9d2-480b-be5e-71e03adbe83e
monitor not started
monitor not started
monitor not started
monitor has started, connecting to http://5752dabccfc54c4ab82aea9626b7338e.monitor-eqatec.com/json.ashx
Analytics statuses: 
{ TrackFeatureUsage: 0, TrackExceptions: 0 }
Trying to track feature 'NodeJSVersion' with value '6_11_2'.
Waiting for analytics to send information. Will check in a 100ms.
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29900
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29800
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29700
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29600
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29500
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29400
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29300
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29200
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29100
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29000
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 28900
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 28800
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 28700
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 28600
Waiting for analytics to send information. Will check in a 100ms.
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29900
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29800
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29700
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29600
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29500
execFile: /usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb "help"
Verifying CocoaPods. This may take more than a minute, please be patient.
spawn: npm "install" "tns-ios" "--global" "false" "--production" "--save" "--ignoreScripts" "--ignore-scripts"

Installing iOS runtime.⸨             ░░░░░⸩ ⠴ extract:tns-ios: sill doParallnativescript-check-cocoapods@0.0.1 /private/var/folders/vm/7my0fjjx4vqfynwwfwvp314m0000gn/T/nativescript-check-cocoapods117727-551-izy77m.oc4y9wl8fr
└── tns-ios@3.1.0 

npm WARN nativescript-check-cocoapods@0.0.1 No description
npm WARN nativescript-check-cocoapods@0.0.1 No repository field.
npm WARN nativescript-check-cocoapods@0.0.1 No license field.
  ◠ Installing iOS runtime.spawn: npm "install" "tns-ios" "--global" "false" "--production" "--save" "--ignoreScripts" "--ignore-scripts" "--json" "--dry-run" "--prefix" "/var/folders/vm/7my0fjjx4vqfynwwfwvp314m0000gn/T/nativescript-check-cocoapods117727-551-izy77m.oc4y9wl8fr"
spawn: pod "install"
  ◞ Verifying CocoaPods. This may take some time, please be patient.Result when throw error is false:
{ stdout: 'Setting up CocoaPods master repo\n  $ /usr/local/bin/git clone https://github.com/CocoaPods/Specs.git master --progress\nSetup completed\nAnalyzing dependencies\nDownloading dependencies\nInstalling AFNetworking (1.3.4)\nGenerating Pods project\nIntegrating client project\n\n[!] Please close any current Xcode sessions and use `__PROJECT_NAME__.xcworkspace` for this project from now on.\nSending stats\nPod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.\n',
  stderr: '  Cloning into \'master\'...

100% ((743511/772585)   \r  Resolving deltas:  97% (749413/772585)   \r  Resolving deltas: 100% (175533/177306)   \r  Checking out files:  99% (176512/177306)   \r  Checking out files: 100% (177306/177306)   \r  Checking out files: 100% (177306/177306), done.\n\n[!] Automatically assigning platform ios with version 8.0 on target __PROJECT_NAME__ because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.\n',
  exitCode: 0 }
  ◜ Verifying CocoaPods. This may take some time, please be patient.
Exec xcodebuild -version 
 stdout: Xcode 8.3.3
Build version 8E3004b
 
 stderr: 
Installed Android Targets are:  [ 'android-17',
  'android-18',
  'android-19',
  'android-21',
  'android-22',
  'android-23',
  'android-24',
  'android-25' ]
Directories found in /usr/local/Caskroom/android-sdk/3859397,26.0.1/build-tools are 25.0.2, 26.0.1
Versions found in /usr/local/Caskroom/android-sdk/3859397,26.0.1/build-tools are 25.0.2, 26.0.1
Selected version is:  26.0.1
Selected targetSdk is: 25
Selected version is:  undefined
Selected AppCompat version is: undefined
Path to Android SDK Management tool is: /usr/local/Caskroom/android-sdk/3859397,26.0.1/tools/bin/sdkmanager
You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.
Run $ $ANDROID_HOME/tools/bin/sdkmanager to manage the Android Support Repository.

Exec python -c "import six" 
 stdout:  
 stderr: 
Analytics statuses: 
{ TrackFeatureUsage: 0, TrackExceptions: 0 }
Trying to track feature 'DoctorEnvironmentSetup' with value 'incorrect'.
Waiting for analytics to send information. Will check in a 100ms.
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29900
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29800
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29700
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29600
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29500
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29400
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29300
There seem to be issues with your configuration.
? Do you want to visit the official documentation? (Y/n) 

#6

and this is the console output when I run tns build android --log trace:

Tylers-MacBook-Air:Groceries tyleraustin$ tns build android --log trace
Loading extensions.
execFile: /usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb "help"
Exec uname -a
 stdout: Darwin Tylers-MacBook-Air.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64

 stderr:
Exec npm -v
 stdout: 3.10.10

 stderr:
spawn: java "-version"
Exec node-gyp -v
 stdout:
 stderr: /bin/sh: node-gyp: command not found

Exec xcodebuild -version
 stdout: Xcode 8.3.3
Build version 8E3004b

 stderr:
Exec gem which xcodeproj
 stdout: /Library/Ruby/Gems/2.0.0/gems/xcodeproj-1.5.1/lib/xcodeproj.rb

 stderr:
Exec pod --version
 stdout: 1.3.1

 stderr:
Exec '/usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb' version
 stdout: Android Debug Bridge version 1.0.39
Revision 3db08f2c6889-android
Installed as /usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb

 stderr:
spawn: /usr/local/Caskroom/android-sdk/3859397,26.0.1/emulator/emulator "-help"
Result when throw error is false:
{ stdout: 'Android Emulator usage: emulator [options] [-qemu args]\n  options:\n    -list-avds                     list available AVDs\n    -sysdir <dir>                  search for system disk images in <dir>\n    -system <file>                 read initial system image from <file>\n    -vendor <file>                 read initial vendor image from <file>\n    -writable-system               make system & vendor image writable after \'adb remount\'\n    -datadir <dir>                 write user data into <dir>\n    -kernel <file>                 use specific emulated kernel\n -ramdisk <file>                ramdisk image (default <system>/ramdisk.img\n    -image <file>                  obsolete, use -system <file> instead\n    -initdata <file>               same as \'-init-data <file>\'\n    -data <file>                   data image (default <datadir>/userdata-qemu.img\n    -logcat-output <file>          output file of logcat(default none)\n    -partition-size <size>         system/data partition size in MBs\n    -cache <file>                  cache partition image (default is temporary file)\n    -cache-size <size>             cache partition sizein MBs\n    -no-cache                      disable the cache partition\n    -nocache                       same as -no-cache\n    -sdcard <file>               SD card image (default <datadir>/sdcard.img\n    -snapstorage <file>            file that contains all state snapshots (default <datadir>/snapshots.img)\n    -no-snapstorage                do not mount a snapshot storage file (this disables all snapshot functionality)\n    -snapshot <name>               name of snapshot within storage file for auto-start and auto-save (default \'default-boot\')\n    -no-snapshot           perform a full boot and do not auto-save, but qemu vmload and vmsave operate on snapstorage\n    -no-snapshot-save              do notauto-save to snapshot on exit: abandon changed state\n    -no-snapshot-load              do not auto-start from snapshot: perform a full boot\n -snapshot-list                 show a list of available snapshots\n    -no-snapshot-update-time       do not do try to correct snapshot time on restore\n    -wipe-data                     reset the user data image (copy it from initdata)\n    -avd <name>                    use a specific android virtual device\n    -skindir <dir>                 search skins in <dir> (default <system>/skins)\n    -skin <name>                   select a given skin\n    -no-skin                       deprecated: create an AVD with no skin instead\n    -noskin                        same as -no-skin\n    -memory <size>                 physical RAM size in MBs\n    -cores <number>                Set number of CPU cores to emulator\n    -accel <mode>                  Configure emulation acceleration\n    -no-accel                      Same as \'-accel off\'\n    -ranchu         Use new emulator backend instead of the classic one\n    -engine <engine>               Select engine. auto|classic|qemu2\n    -netspeed<speed>              maximum network download/upload speeds\n    -netdelay <delay>              network latency emulation\n    -netfast            disable network shaping\n    -code-profile <name>           enable code profiling\n    -show-kernel                   display kernel messages\n    -shell                         enable root shell on current terminal\n    -no-jni                        disable JNI checks in the Dalvik runtime\n    -nojni                         same as -no-jni\n    -logcat <tags>                 enable logcat output with given tags\n    -no-audio                      disable audio support\n    -noaudio                       same as -no-audio\n    -audio <backend>               use specific audio backend\n    -radio <device>                redirect radio modem interface to character device\n    -port <port>                   TCP port that will be used for the console\n    -ports <consoleport>,<adbport> TCP ports used for the console and adb bridge\n    -onion <image>             use overlay PNG image over screen\n    -onion-alpha <%age>            specify onion-skin translucency\n    -onion-rotation 0|1|2|3     specify onion-skin rotation\n    -dpi-device <dpi>              specify device\'s resolution in dpi (default 165)\n    -scale <scale>         scale emulator window (deprecated)\n    -http-proxy <proxy>            make TCP connections through a HTTP/HTTPS proxy\n    -timezone <timezone>           use this timezone instead of the host\'s default\n    -dns-server <servers>          use this DNS server(s) in the emulated system\n    -cpu-delay <cpudelay>          throttle CPU emulation\n    -no-boot-anim                  disable animation for faster boot\n    -no-window                     disable graphical window display\n    -version                       display emulator version number\n    -report-console <socket>       report console port to remote socket\n    -gps <device>                  redirect NMEA GPS to character device\n    -shell-serial <device>         specific character device for root shell\n    -tcpdump <file>                capture network packets to file\n    -bootchart <timeout>           enable bootcharting\n    -charmap <file>                use specific key character map\n    -studio-params <file>          used by Android Studio to provide parameters\n    -prop <name>=<value>           set system property on boot\n    -shared-net-id <number>        join the shared network, using IP address 10.1.2.<number>\n    -nand-limits <nlimits>         enforce NAND/Flash read/write thresholds\n    -gpu <mode>              set hardware OpenGLES emulation mode\n    -camera-back <mode>            set emulation mode for a camera facing back\n    -camera-front <mode>           set emulation mode for a camera facing front\n    -webcam-list                   lists web cameras available for emulation\n   -screen <mode>                 set emulated screen mode\n    -force-32bit                   always use 32-bit emulator\n    -selinux <disabled|permissive> Set SELinux to either disabled or permissive mode\n    -unix-pipe <path>              Add <path> to the list of allowed Unix pipes\n  -fixed-scale                   Use fixed 1:1 scale for the initial emulator window.\n    -wait-for-debugger             Pause on launch and wait for a debugger process to attach before resuming\n    -skip-adb-auth                 Skip adb authentication dialogue\n    -metrics-to-console         Enable usage metrics and print the messages to stdout\n    -metrics-to-file <file>        Enable usage metrics and write the messages into specified file\n\n     -qemu args...                 pass arguments to qemu\n     -qemu -h                      display qemu help\n\n     -verbose                      same as \'-debug-init\'\n     -debug <tags>                 enable/disable debug messages\n     -debug-<tag>    enable specific debug messages\n     -debug-no-<tag>               disable specific debug messages\n\n     -help                         print this help\n     -help-<option>                print option-specific help\n\n     -help-disk-images             about disk images\n     -help-debug-tags              debug tags for -debug <tags>\n     -help-char-devices            character <device> specification\n     -help-environment        environment variables\n     -help-virtual-device          virtual device management\n     -help-sdk-images              about disk imageswhen using the SDK\n     -help-build-images            about disk images when building Android\n     -help-all                     prints all help content\n\n',
  stderr: '',
  exitCode: 0 }
The result of checking is Android Emulator installed is:
- stdout: Android Emulator usage: emulator [options] [-qemu args]
  options:
    -list-avds                     list available AVDs
    -sysdir <dir>                  search for system disk images in <dir>
    -system <file>                 read initial system image from <file>
    -vendor <file>                 read initial vendor image from <file>
    -writable-system               make system & vendor image writable after 'adb remount'
    -datadir <dir>                 write user data into <dir>
    -kernel <file>                 use specific emulated kernel
    -ramdisk <file>                ramdisk image (default <system>/ramdisk.img
    -image <file>                  obsolete, use -system <file> instead
    -initdata <file>               same as '-init-data <file>'
    -data <file>                   data image (default <datadir>/userdata-qemu.img
    -logcat-output <file>          output file of logcat(default none)
    -partition-size <size>         system/data partition size in MBs
    -cache <file>                  cache partition image (default is temporary file)
    -cache-size <size>             cache partition size in MBs
    -no-cache                      disable the cache partition
    -nocache                       same as -no-cache
    -sdcard <file>                 SD card image (default <datadir>/sdcard.img
    -snapstorage <file>            file that contains all state snapshots (default <datadir>/snapshots.img)
    -no-snapstorage                do not mount a snapshot storage file (this disables all snapshot functionality)
    -snapshot <name>               name of snapshot within storage file for auto-start and auto-save (default 'default-boot')
    -no-snapshot                   perform a full boot and do not auto-save, but qemu vmload and vmsave operate on snapstorage
    -no-snapshot-save              do not auto-save to snapshot on exit: abandon changed state
    -no-snapshot-load              do not auto-start from snapshot: perform a full boot
    -snapshot-list                 show a list of available snapshots
    -no-snapshot-update-time       do not do try to correct snapshot time on restore
    -wipe-data                     reset the user data image (copy it from initdata)
    -avd <name>                    use a specific android virtual device
    -skindir <dir>                 search skins in <dir> (default <system>/skins)
    -skin <name>                   select a given skin
    -no-skin                       deprecated: create an AVD with no skin instead
    -noskin                        same as -no-skin
    -memory <size>                 physical RAM size in MBs
    -cores <number>                Set number of CPU cores to emulator
    -accel <mode>                  Configure emulation acceleration
    -no-accel                      Same as '-accel off'
    -ranchu                        Use new emulator backend instead of the classic one
    -engine <engine>               Select engine. auto|classic|qemu2
    -netspeed <speed>              maximum network download/upload speeds
    -netdelay <delay>              network latency emulation
    -netfast                       disable network shaping
    -code-profile <name>           enable code profiling
    -show-kernel                   display kernel messages
    -shell                         enable root shell on current terminal
    -no-jni                        disable JNI checks in the Dalvik runtime
    -nojni                         same as -no-jni
    -logcat <tags>                 enable logcat output with given tags
    -no-audio                      disable audio support
    -noaudio                       same as -no-audio
    -audio <backend>               use specific audio backend
    -radio <device>                redirect radio modem interface to character device
    -port <port>                   TCP port that will be used for the console
    -ports <consoleport>,<adbport> TCP ports used for the console and adb bridge
    -onion <image>                 use overlay PNG image over screen
    -onion-alpha <%age>            specify onion-skin translucency
    -onion-rotation 0|1|2|3        specify onion-skin rotation
    -dpi-device <dpi>              specify device's resolution in dpi (default 165)
    -scale <scale>                 scale emulator window (deprecated)
    -http-proxy <proxy>            make TCP connections through a HTTP/HTTPS proxy
    -timezone <timezone>           use this timezone instead of the host's default
    -dns-server <servers>          use this DNS server(s) in the emulated system
    -cpu-delay <cpudelay>          throttle CPU emulation
    -no-boot-anim                  disable animation for faster boot
    -no-window                     disable graphical window display
    -version                       display emulator version number
    -report-console <socket>       report console port to remote socket
    -gps <device>                  redirect NMEA GPS to character device
    -shell-serial <device>         specific character device for root shell
    -tcpdump <file>                capture network packets to file
    -bootchart <timeout>           enable bootcharting
    -charmap <file>                use specific key character map
    -studio-params <file>          used by Android Studio to provide parameters
    -prop <name>=<value>           set system property on boot
    -shared-net-id <number>        join the shared network, using IP address 10.1.2.<number>
    -nand-limits <nlimits>         enforce NAND/Flash read/write thresholds
    -gpu <mode>                    set hardware OpenGLES emulation mode
    -camera-back <mode>            set emulation mode for a camera facing back
    -camera-front <mode>           set emulation mode for a camera facing front
    -webcam-list                   lists web cameras available for emulation
    -screen <mode>                 set emulated screen mode
    -force-32bit                   always use 32-bit emulator
    -selinux <disabled|permissive> Set SELinux to either disabled or permissive mode
    -unix-pipe <path>              Add <path> to the list of allowed Unix pipes
    -fixed-scale                   Use fixed 1:1 scale for the initial emulator window.
    -wait-for-debugger             Pause on launch and wait for a debugger process to attach before resuming
    -skip-adb-auth                 Skip adb authentication dialogue
    -metrics-to-console            Enable usage metrics and print the messages to stdout
    -metrics-to-file <file>        Enable usage metrics and write the messages into specified file

     -qemu args...                 pass arguments to qemu
     -qemu -h                      display qemu help

     -verbose                      same as '-debug-init'
     -debug <tags>                 enable/disable debug messages
     -debug-<tag>                  enable specific debug messages
     -debug-no-<tag>               disable specific debug messages

     -help                         print this help
     -help-<option>                print option-specific help

     -help-disk-images             about disk images
     -help-debug-tags              debug tags for -debug <tags>
     -help-char-devices            character <device> specification
     -help-environment             environment variables
     -help-virtual-device          virtual device management
     -help-sdk-images              about disk images when using the SDK
     -help-build-images            about disk images when building Android
     -help-all                     prints all help content


- stderr:
Exec mono --version
 stdout:
 stderr: /bin/sh: mono: command not found

Exec git --version
 stdout: git version 2.14.1

 stderr:
Exec gradle -v
 stdout:
 stderr: /bin/sh: gradle: command not found

Exec "/Library/Java/Home/bin/javac" -version
 stdout:
 stderr: javac 1.8.0_144

System information:
{ procInfo: 'nativescript/3.1.3',
  platform: 'darwin',
  os: 'Darwin Tylers-MacBook-Air.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64\n',
  shell: '/bin/bash',
  dotNetVer: null,
  procArch: 'x64',
  nodeVer: 'v6.11.2',
  npmVer: '3.10.10',
  javaVer: '1.8.0',
  nodeGypVer: null,
  xcodeVer: 'Xcode 8.3.3\nBuild version 8E3004b\n',
  xcodeprojGemLocation: '/Library/Ruby/Gems/2.0.0/gems/xcodeproj-1.5.1/lib/xcodeproj.rb\n',
  itunesInstalled: true,
  cocoapodVer: '1.3.1',
  adbVer: 'Android Debug Bridge version 1.0.39',
  emulatorInstalled: true,
  monoVer: null,
  gitVer: '2.14.1',
  gradleVer: null,
  javacVersion: '1.8.0_144' }
Looking for project in '/Users/tyleraustin/Documents/GitHub/Groceries'
Project directory is '/Users/tyleraustin/Documents/GitHub/Groceries'.
Installed Android Targets are:  [ 'android-17',
  'android-18',
  'android-19',
  'android-21',
  'android-22',
  'android-23',
  'android-24',
  'android-25' ]
Directories found in /usr/local/Caskroom/android-sdk/3859397,26.0.1/build-tools are 25.0.2, 26.0.1
Versions found in /usr/local/Caskroom/android-sdk/3859397,26.0.1/build-tools are 25.0.2, 26.0.1
Selected version is:  26.0.1
Selected targetSdk is: 25
Selected version is:  undefined
Selected AppCompat version is: undefined
Path to Android SDK Management tool is: /usr/local/Caskroom/android-sdk/3859397,26.0.1/tools/bin/sdkmanager
You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.
Error: You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.
    at Object.<anonymous> (/usr/local/lib/node_modules/nativescript/lib/common/errors.js:16:23)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/usr/local/lib/node_modules/nativescript/lib/nativescript-cli.js:15:18)
    at Module._compile (module.js:570:32)
Initializing analytics statuses.
Analytics statuses:
{ TrackFeatureUsage: 0, TrackExceptions: 0 }
Trying to track exception with message 'You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.'.
AnalyticsInstallationID: f18ec462-f9d2-480b-be5e-71e03adbe83e
monitor not started
monitor not started
monitor not started
monitor has started, connecting to http://35478fe7de68431399e96212540a3d5d.monitor-eqatec.com/json.ashx
Analytics statuses:
{ TrackFeatureUsage: 0, TrackExceptions: 0 }
Trying to track feature 'NodeJSVersion' with value '6_11_2'.
Waiting for analytics to send information. Will check in a 100ms.
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29900
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29800
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29700
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29600
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29500
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29400
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29300
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29200
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29100
Waiting for analytics to send information. Will check in a 100ms.
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29900
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29800
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29700
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29600
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29500

#7

and here is the console output when I run tns build android --log trace:

Tylers-MacBook-Air:Groceries tyleraustin$ tns build android --log trace
Loading extensions.
execFile: /usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb "help"
Exec uname -a
 stdout: Darwin Tylers-MacBook-Air.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64

 stderr:
Exec npm -v
 stdout: 3.10.10

 stderr:
spawn: java "-version"
Exec node-gyp -v
 stdout:
 stderr: /bin/sh: node-gyp: command not found

Exec xcodebuild -version
 stdout: Xcode 8.3.3
Build version 8E3004b

 stderr:
Exec gem which xcodeproj
 stdout: /Library/Ruby/Gems/2.0.0/gems/xcodeproj-1.5.1/lib/xcodeproj.rb

 stderr:
Exec pod --version
 stdout: 1.3.1

 stderr:
Exec '/usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb' version
 stdout: Android Debug Bridge version 1.0.39
Revision 3db08f2c6889-android
Installed as /usr/local/Caskroom/android-sdk/3859397,26.0.1/platform-tools/adb

 stderr:
spawn: /usr/local/Caskroom/android-sdk/3859397,26.0.1/emulator/emulator "-help"
Result when throw error is false:
{ stdout: 'Android Emulator usage: emulator [options] [-qemu args]\n  options:\n    -list-avds                     list available AVDs\n    -sysdir <dir>                  search for system disk images in <dir>\n    -system <file>                 read initial system image from <file>\n    -vendor <file>                 read initial vendor image from <file>\n    -writable-system               make system & vendor image writable after \'adb remount\'\n    -datadir <dir>                 write user data into <dir>\n    -kernel <file>                 use specific emulated kernel\n -ramdisk <file>                ramdisk image (default <system>/ramdisk.img\n    -image <file>                  obsolete, use -system <file> instead\n    -initdata <file>               same as \'-init-data <file>\'\n    -data <file>                   data image (default <datadir>/userdata-qemu.img\n    -logcat-output <file>          output file of logcat(default none)\n    -partition-size <size>         system/data partition size in MBs\n    -cache <file>                  cache partition image (default is temporary file)\n    -cache-size <size>             cache partition sizein MBs\n    -no-cache                      disable the cache partition\n    -nocache                       same as -no-cache\n    -sdcard <file>               SD card image (default <datadir>/sdcard.img\n    -snapstorage <file>            file that contains all state snapshots (default <datadir>/snapshots.img)\n    -no-snapstorage                do not mount a snapshot storage file (this disables all snapshot functionality)\n    -snapshot <name>               name of snapshot within storage file for auto-start and auto-save (default \'default-boot\')\n    -no-snapshot           perform a full boot and do not auto-save, but qemu vmload and vmsave operate on snapstorage\n    -no-snapshot-save              do notauto-save to snapshot on exit: abandon changed state\n    -no-snapshot-load              do not auto-start from snapshot: perform a full boot\n -snapshot-list                 show a list of available snapshots\n    -no-snapshot-update-time       do not do try to correct snapshot time on restore\n    -wipe-data                     reset the user data image (copy it from initdata)\n    -avd <name>                    use a specific android virtual device\n    -skindir <dir>                 search skins in <dir> (default <system>/skins)\n    -skin <name>                   select a given skin\n    -no-skin                       deprecated: create an AVD with no skin instead\n    -noskin                        same as -no-skin\n    -memory <size>                 physical RAM size in MBs\n    -cores <number>                Set number of CPU cores to emulator\n    -accel <mode>                  Configure emulation acceleration\n    -no-accel                      Same as \'-accel off\'\n    -ranchu         Use new emulator backend instead of the classic one\n    -engine <engine>               Select engine. auto|classic|qemu2\n    -netspeed<speed>              maximum network download/upload speeds\n    -netdelay <delay>              network latency emulation\n    -netfast            disable network shaping\n    -code-profile <name>           enable code profiling\n    -show-kernel                   display kernel messages\n    -shell                         enable root shell on current terminal\n    -no-jni                        disable JNI checks in the Dalvik runtime\n    -nojni                         same as -no-jni\n    -logcat <tags>                 enable logcat output with given tags\n    -no-audio                      disable audio support\n    -noaudio                       same as -no-audio\n    -audio <backend>               use specific audio backend\n    -radio <device>                redirect radio modem interface to character device\n    -port <port>                   TCP port that will be used for the console\n    -ports <consoleport>,<adbport> TCP ports used for the console and adb bridge\n    -onion <image>             use overlay PNG image over screen\n    -onion-alpha <%age>            specify onion-skin translucency\n    -onion-rotation 0|1|2|3     specify onion-skin rotation\n    -dpi-device <dpi>              specify device\'s resolution in dpi (default 165)\n    -scale <scale>         scale emulator window (deprecated)\n    -http-proxy <proxy>            make TCP connections through a HTTP/HTTPS proxy\n    -timezone <timezone>           use this timezone instead of the host\'s default\n    -dns-server <servers>          use this DNS server(s) in the emulated system\n    -cpu-delay <cpudelay>          throttle CPU emulation\n    -no-boot-anim                  disable animation for faster boot\n    -no-window                     disable graphical window display\n    -version                       display emulator version number\n    -report-console <socket>       report console port to remote socket\n    -gps <device>                  redirect NMEA GPS to character device\n    -shell-serial <device>         specific character device for root shell\n    -tcpdump <file>                capture network packets to file\n    -bootchart <timeout>           enable bootcharting\n    -charmap <file>                use specific key character map\n    -studio-params <file>          used by Android Studio to provide parameters\n    -prop <name>=<value>           set system property on boot\n    -shared-net-id <number>        join the shared network, using IP address 10.1.2.<number>\n    -nand-limits <nlimits>         enforce NAND/Flash read/write thresholds\n    -gpu <mode>              set hardware OpenGLES emulation mode\n    -camera-back <mode>            set emulation mode for a camera facing back\n    -camera-front <mode>           set emulation mode for a camera facing front\n    -webcam-list                   lists web cameras available for emulation\n   -screen <mode>                 set emulated screen mode\n    -force-32bit                   always use 32-bit emulator\n    -selinux <disabled|permissive> Set SELinux to either disabled or permissive mode\n    -unix-pipe <path>              Add <path> to the list of allowed Unix pipes\n  -fixed-scale                   Use fixed 1:1 scale for the initial emulator window.\n    -wait-for-debugger             Pause on launch and wait for a debugger process to attach before resuming\n    -skip-adb-auth                 Skip adb authentication dialogue\n    -metrics-to-console         Enable usage metrics and print the messages to stdout\n    -metrics-to-file <file>        Enable usage metrics and write the messages into specified file\n\n     -qemu args...                 pass arguments to qemu\n     -qemu -h                      display qemu help\n\n     -verbose                      same as \'-debug-init\'\n     -debug <tags>                 enable/disable debug messages\n     -debug-<tag>    enable specific debug messages\n     -debug-no-<tag>               disable specific debug messages\n\n     -help                         print this help\n     -help-<option>                print option-specific help\n\n     -help-disk-images             about disk images\n     -help-debug-tags              debug tags for -debug <tags>\n     -help-char-devices            character <device> specification\n     -help-environment        environment variables\n     -help-virtual-device          virtual device management\n     -help-sdk-images              about disk imageswhen using the SDK\n     -help-build-images            about disk images when building Android\n     -help-all                     prints all help content\n\n',
  stderr: '',
  exitCode: 0 }
The result of checking is Android Emulator installed is:
- stdout: Android Emulator usage: emulator [options] [-qemu args]
  options:
    -list-avds                     list available AVDs
    -sysdir <dir>                  search for system disk images in <dir>
    -system <file>                 read initial system image from <file>
    -vendor <file>                 read initial vendor image from <file>
    -writable-system               make system & vendor image writable after 'adb remount'
    -datadir <dir>                 write user data into <dir>
    -kernel <file>                 use specific emulated kernel
    -ramdisk <file>                ramdisk image (default <system>/ramdisk.img
    -image <file>                  obsolete, use -system <file> instead
    -initdata <file>               same as '-init-data <file>'
    -data <file>                   data image (default <datadir>/userdata-qemu.img
    -logcat-output <file>          output file of logcat(default none)
    -partition-size <size>         system/data partition size in MBs
    -cache <file>                  cache partition image (default is temporary file)
    -cache-size <size>             cache partition size in MBs
    -no-cache                      disable the cache partition
    -nocache                       same as -no-cache
    -sdcard <file>                 SD card image (default <datadir>/sdcard.img
    -snapstorage <file>            file that contains all state snapshots (default <datadir>/snapshots.img)
    -no-snapstorage                do not mount a snapshot storage file (this disables all snapshot functionality)
    -snapshot <name>               name of snapshot within storage file for auto-start and auto-save (default 'default-boot')
    -no-snapshot                   perform a full boot and do not auto-save, but qemu vmload and vmsave operate on snapstorage
    -no-snapshot-save              do not auto-save to snapshot on exit: abandon changed state
    -no-snapshot-load              do not auto-start from snapshot: perform a full boot
    -snapshot-list                 show a list of available snapshots
    -no-snapshot-update-time       do not do try to correct snapshot time on restore
    -wipe-data                     reset the user data image (copy it from initdata)
    -avd <name>                    use a specific android virtual device
    -skindir <dir>                 search skins in <dir> (default <system>/skins)
    -skin <name>                   select a given skin
    -no-skin                       deprecated: create an AVD with no skin instead
    -noskin                        same as -no-skin
    -memory <size>                 physical RAM size in MBs
    -cores <number>                Set number of CPU cores to emulator
    -accel <mode>                  Configure emulation acceleration
    -no-accel                      Same as '-accel off'
    -ranchu                        Use new emulator backend instead of the classic one
    -engine <engine>               Select engine. auto|classic|qemu2
    -netspeed <speed>              maximum network download/upload speeds
    -netdelay <delay>              network latency emulation
    -netfast                       disable network shaping
    -code-profile <name>           enable code profiling
    -show-kernel                   display kernel messages
    -shell                         enable root shell on current terminal
    -no-jni                        disable JNI checks in the Dalvik runtime
    -nojni                         same as -no-jni
    -logcat <tags>                 enable logcat output with given tags
    -no-audio                      disable audio support
    -noaudio                       same as -no-audio
    -audio <backend>               use specific audio backend
    -radio <device>                redirect radio modem interface to character device
    -port <port>                   TCP port that will be used for the console
    -ports <consoleport>,<adbport> TCP ports used for the console and adb bridge
    -onion <image>                 use overlay PNG image over screen
    -onion-alpha <%age>            specify onion-skin translucency
    -onion-rotation 0|1|2|3        specify onion-skin rotation
    -dpi-device <dpi>              specify device's resolution in dpi (default 165)
    -scale <scale>                 scale emulator window (deprecated)
    -http-proxy <proxy>            make TCP connections through a HTTP/HTTPS proxy
    -timezone <timezone>           use this timezone instead of the host's default
    -dns-server <servers>          use this DNS server(s) in the emulated system
    -cpu-delay <cpudelay>          throttle CPU emulation
    -no-boot-anim                  disable animation for faster boot
    -no-window                     disable graphical window display
    -version                       display emulator version number
    -report-console <socket>       report console port to remote socket
    -gps <device>                  redirect NMEA GPS to character device
    -shell-serial <device>         specific character device for root shell
    -tcpdump <file>                capture network packets to file
    -bootchart <timeout>           enable bootcharting
    -charmap <file>                use specific key character map
    -studio-params <file>          used by Android Studio to provide parameters
    -prop <name>=<value>           set system property on boot
    -shared-net-id <number>        join the shared network, using IP address 10.1.2.<number>
    -nand-limits <nlimits>         enforce NAND/Flash read/write thresholds
    -gpu <mode>                    set hardware OpenGLES emulation mode
    -camera-back <mode>            set emulation mode for a camera facing back
    -camera-front <mode>           set emulation mode for a camera facing front
    -webcam-list                   lists web cameras available for emulation
    -screen <mode>                 set emulated screen mode
    -force-32bit                   always use 32-bit emulator
    -selinux <disabled|permissive> Set SELinux to either disabled or permissive mode
    -unix-pipe <path>              Add <path> to the list of allowed Unix pipes
    -fixed-scale                   Use fixed 1:1 scale for the initial emulator window.
    -wait-for-debugger             Pause on launch and wait for a debugger process to attach before resuming
    -skip-adb-auth                 Skip adb authentication dialogue
    -metrics-to-console            Enable usage metrics and print the messages to stdout
    -metrics-to-file <file>        Enable usage metrics and write the messages into specified file

     -qemu args...                 pass arguments to qemu
     -qemu -h                      display qemu help

     -verbose                      same as '-debug-init'
     -debug <tags>                 enable/disable debug messages
     -debug-<tag>                  enable specific debug messages
     -debug-no-<tag>               disable specific debug messages

     -help                         print this help
     -help-<option>                print option-specific help

     -help-disk-images             about disk images
     -help-debug-tags              debug tags for -debug <tags>
     -help-char-devices            character <device> specification
     -help-environment             environment variables
     -help-virtual-device          virtual device management
     -help-sdk-images              about disk images when using the SDK
     -help-build-images            about disk images when building Android
     -help-all                     prints all help content


- stderr:
Exec mono --version
 stdout:
 stderr: /bin/sh: mono: command not found

Exec git --version
 stdout: git version 2.14.1

 stderr:
Exec gradle -v
 stdout:
 stderr: /bin/sh: gradle: command not found

Exec "/Library/Java/Home/bin/javac" -version
 stdout:
 stderr: javac 1.8.0_144

System information:
{ procInfo: 'nativescript/3.1.3',
  platform: 'darwin',
  os: 'Darwin Tylers-MacBook-Air.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64\n',
  shell: '/bin/bash',
  dotNetVer: null,
  procArch: 'x64',
  nodeVer: 'v6.11.2',
  npmVer: '3.10.10',
  javaVer: '1.8.0',
  nodeGypVer: null,
  xcodeVer: 'Xcode 8.3.3\nBuild version 8E3004b\n',
  xcodeprojGemLocation: '/Library/Ruby/Gems/2.0.0/gems/xcodeproj-1.5.1/lib/xcodeproj.rb\n',
  itunesInstalled: true,
  cocoapodVer: '1.3.1',
  adbVer: 'Android Debug Bridge version 1.0.39',
  emulatorInstalled: true,
  monoVer: null,
  gitVer: '2.14.1',
  gradleVer: null,
  javacVersion: '1.8.0_144' }
Looking for project in '/Users/tyleraustin/Documents/GitHub/Groceries'
Project directory is '/Users/tyleraustin/Documents/GitHub/Groceries'.
Installed Android Targets are:  [ 'android-17',
  'android-18',
  'android-19',
  'android-21',
  'android-22',
  'android-23',
  'android-24',
  'android-25' ]
Directories found in /usr/local/Caskroom/android-sdk/3859397,26.0.1/build-tools are 25.0.2, 26.0.1
Versions found in /usr/local/Caskroom/android-sdk/3859397,26.0.1/build-tools are 25.0.2, 26.0.1
Selected version is:  26.0.1
Selected targetSdk is: 25
Selected version is:  undefined
Selected AppCompat version is: undefined
Path to Android SDK Management tool is: /usr/local/Caskroom/android-sdk/3859397,26.0.1/tools/bin/sdkmanager
You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.
Error: You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.
    at Object.<anonymous> (/usr/local/lib/node_modules/nativescript/lib/common/errors.js:16:23)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/usr/local/lib/node_modules/nativescript/lib/nativescript-cli.js:15:18)
    at Module._compile (module.js:570:32)
Initializing analytics statuses.
Analytics statuses:
{ TrackFeatureUsage: 0, TrackExceptions: 0 }
Trying to track exception with message 'You need to have Android SDK 22 or later and the latest Android Support Repository installed on your system.'.
AnalyticsInstallationID: f18ec462-f9d2-480b-be5e-71e03adbe83e
monitor not started
monitor not started
monitor not started
monitor has started, connecting to http://35478fe7de68431399e96212540a3d5d.monitor-eqatec.com/json.ashx
Analytics statuses:
{ TrackFeatureUsage: 0, TrackExceptions: 0 }
Trying to track feature 'NodeJSVersion' with value '6_11_2'.
Waiting for analytics to send information. Will check in a 100ms.
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29900
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29800
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29700
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29600
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29500
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29400
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29300
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29200
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29100
Waiting for analytics to send information. Will check in a 100ms.
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29900
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29800
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29700
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29600
Statistics was sent successfully (xhr).
Waiting for analytics to send information. Will check in a 100ms. Remaining time is: 29500

#8

I am replying a bit late, it appears, still, if you haven’t resolved the problem yourself - see if you have installed the extras from the sdkmanager. That package contains the mandatory android support libraries, and the lack of it is likely the reason for the error.