LoginSignup
2
2

More than 5 years have passed since last update.

(Mac)Cordova開発環境構築

Posted at

Cordovaの環境を作った際に何度か詰まったので、備忘録を残しました。
(AndroidStudioを構築済みであるため、同じSDKを使用)

1.Node.jsのインストール

CordovaはNode.jsの上で動くので、https://nodejs.org/ja/ からインストーラをダウンロードしてインストール

2.Cordovaのインストール

sudo npm install -g cordova

3.プロジェクトの作成

cordova create HelloCordova

cd HelloCordova

4.プラグインの追加

AndroidとiOSのプラグインを追加したかったため、以下をターミナルで入力

cordova platform add ios android

5.Androidビルド1回目

以前にAndroidStudioを入れていたので、AndroidSDKやJDKは導入済みであったが、以下のエラーが発生

cordova run android

//エラー内容
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-10.0.2.jdk/Contents/Home
Requirements check failed for JDK 1.8

どうもJDK8を入れないとCordovaはビルドできない模様(このPCはJDK10を入れていた)

6.JDK8の導入

JDK8はOracleのページからダウンロードしてインストール

その後インストールされていることを確認

/usr/libexec/java_home -V

//出力内容
Matching Java Virtual Machines (2):
    10.0.2, x86_64: "Java SE 10.0.2"    /Library/Java/JavaVirtualMachines/jdk-10.0.2.jdk/Contents/Home
    1.8.0_191, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/jdk-10.0.2.jdk/Contents/Home

環境設定ファイルを開く

open ~/.bash_profile

以下を追記(jdk1.8.0_191.jdkへのパスを通した)
export PATH=$PATH:/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home/bin
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home

確認

java -version

//出力内容
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)

7.Androidビルド2回目

cordova build android

//エラー内容
Could not find an installed version of Gradle either in Android Studio,
or on your system to install the gradle wrapper. Please include gradle 
in your path, or install Android Studio

Android Studioのgradleが発見できないようなので再度環境設定ファイルを開く

8.Gradleのパスを設定

open ~/.bash_profile

以下を追記(このPCのgradeのバージョンは4.6)
export PATH=$PATH:"/Applications/Android Studio.app/Contents/gradle/gradle-4.6/bin"

9.Androidビルド3回目

cordova build android

//エラー内容
gradle: Command failed with exit code EACCES

gradleの実行権限がないらしいので設定

10.Gradleの権限設定

実行権限を設定

chmod +x "/Applications/Android Studio.app/Contents/gradle/gradle-4.6/bin/gradle"

確認

ls -l "/Applications/Android Studio.app/Contents/gradle/gradle-4.6/bin/gradle"

//出力内容
-rwxr-xr-x

11.Androidビルド4回目

cordova build android

//出力内容
BUILD SUCCESSFUL in 1m 59s

ようやく成功しました

12.iOSビルド

cordova build ios

//エラー内容
CordovaError: Promise rejected with non-error: 'xcode-select: error: tool \'xcodebuild\' requires Xcode, but active developer directory \'/Library/Developer/CommandLineTools\' is a command line tools instance\n'
    at cli.catch.err (/usr/local/lib/node_modules/cordova/bin/cordova:30:15)
    at process._tickCallback (internal/process/next_tick.js:68:7)

iOSのデベロッパー登録をしていないので、エラーが起こる模様
なおWindowsだとリモートでXcodeを指定するらしい

デベロッパー登録はまだ行う予定がないのでここまでで終了

感想

Cordovaの環境作りはネイティブに比べて面倒だと聞いていたが予想以上だった。
最近の開発ツールは環境変数の設定が不要のものも多いため久しぶりに環境変数を編集したと思う。
Visual Studio Tools for Apache Cordovaも何故かVisual Studio for Macでは提供されていないなど、どの環境でクロスプラットフォーム開発をすべきかといったことを決めるのは中々骨が折れそう

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2