NativeScript.ru

Кросс-платформенная разработка мобильных приложений

Установка NativeScript на Windows, OS X и Linux

Установка NativeScript

Что будем делать

Установим NativeScript на 3 платформы:

Linux

Начнем с самого простого - Linux. В целом для работы NS нам понадобится:

  • какой-нибудь не самый древний Linux (как поставить - разбирайтесь сами :))
  • Node.js
  • компилятор G++
  • JDK 8 или выше
  • Android SDK 22 и SDK Build-tools 23 и выше, а также локально настроенные Maven репозитории
  • опционально - Genymotion - эмулятор Android

Запускать приложения, созданные с помощью NativeScript для iOS из-под Linux нельзя, т.к. NativeScript использует Xcode для компиляции кода под iOS. Но можно запилить виртуальную машину с Mac OS X и запускать оттуда, либо воспользоваться Telerik Platform. Подробнее будет описано в соответствующем разделе.

Система

Все примеры приводятся для Ubuntu-подобного дистрибутива с системой управления пакетами APT. В моем примере это Linux Mint 18 Sarah (базируется на Ubuntu 16.04 'Xenial Xerus').

Доустанавливаем необходимые либы, если мы на 64-битной системе:

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 libstdc++6:i386

Ставим компилятор G++:

sudo apt-get install g++
Node.js

Сначала ставим build-tools для компиляции нативных дополнений от npm

sudo apt-get install -y build-essential

Теперь ставим Node.js

Для версии 4.x (LTS)

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs

Для версии 6.x (Current)

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs

Если нужно, чтобы Node.js в консоли вызывался через node, а не nodejs, ставим legacy пакет (или сами создаем символические ссылки):

sudo apt-get install -y nodejs-legacy

Посмотреть отличия функционала версий Node.js друг от друга можно здесь.

JDK

Для Linux существуют 2 версии JDK (Java Development Kit) - Oracle JDK (проприетарная версия от Oracle) и, соответственно, его открытая альтернатива OpenJDK. Принципиальных различий между версиями нет, но для работы NativeScript нужен рантайм 8-ой версии, тогда как OpenJDK, насколько мне известно, базируется на версии 7-ой. Более подробно о различиях можно почитать, например, здесь.

Итак, ставим проприетарный Oracle JDK:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Переключаться между различными версиями Java, установленными в системе, можно с помощью команды:

sudo update-alternatives --config java

И последнее - устанавливаем переменную окружения JAVA_HOME:

export JAVA_HOME=$(update-alternatives --query javac | sed -n -e 's/Best: *\(.*\)\/bin\/javac/\1/p')
Android SDK
Ленивый вариант для сомневающихся

Конечно же, будем ставить SDK из PPA:

sudo add-apt-repository ppa:linuxgndu/adt-raring
sudo apt-get update
sudo apt-get install android-sdk

Android SDK ставится в этом случае в /opt/android-sdk/sdk. В нем должны быть директории tools и platform-tools.

Устанавливаем переменную ANDROID_HOME:

export ANDROID_HOME=/opt/android-sdk/sdk

затем доустанавливаем необходимые пакеты:

sudo $ANDROID_HOME/tools/android update sdk --filter tools,platform-tools,android-23,build-tools-23.0.3,extra-android-m2repository,extra-google-m2repository,extra-android-support --all --no-ui

По ходу установки нужно будет принять соглашения об использовании (нажать на y).

Стоит отметить, что данный PPA полагается на Java 7 (а нам нужна 8) и поправляет переменные окружения. javac у вас будет указывать на 1.7.x версию. Для предотвращения такого казуса снова запустите команду для установки переменной JAVA_HOME (см. выше).

Иногда с первого раза может все не поставиться (у меня, например, Build Tools не поставились), поэтому нужно будет запустить эту команду еще раз. Можно запустить ее без аргументов

sudo $ANDROID_HOME/tools/android

и через GUI отметить необходимые для установки пакеты. Android SDK Manager

Долгий вариант для поддержания красноты глаз

Скучен день до вечера, коли делать нечего.

Возможно, ленивый вариант по каким-то причинам у вас не прокатит (PPA загнулся, дистрибутив не поддерживается, магия, etc) - тогда будем пробовать долгий вариант. Тогда идем на страничку скачивания Android SDK.

Продолжение следует…

Windows

Скоро будет

Mac OS X

Скоро будет

Возможные проблемы

  • Могут отличаться версии java и javac. Проверьте переменную JAVA_HOME:
  echo $JAVA_HOME
  

Обе должны указывать на 8-ую версию.

  • После перезагрузки могут слететь JAVA_HOME и ANDROID_HOME, либо указывать на неправильные пути. Решение - устанавливать их каждый раз при входе в систему. Для моей системы нужно подредактировать файл .bashrc, который лежит в корне домашней папки пользователя и добавить туда уже знакомые нам строки:
export JAVA_HOME=$(update-alternatives --query javac | sed -n -e 's/Best: *\(.*\)\/bin\/javac/\1/p')
export ANDROID_HOME=/opt/android-sdk/sdk

Если что-то пошло не так

то Гугл вам в помощь.

Туда >>