賛否両論あるが昔からアプリ開発をするにはMacが良いとされてきた。Macの方がいいのではないか、という意見側の根拠としてはやはりiPhoneアプリ開発とAndroidアプリ開発の両方がMac1台で行えるからだ。
しかし、個人的に愛読していた「Kotlin対応 はじめてのAndroidプログラミング」という技術本の中でM1 Macに対して次のような見解が記載されていた。
本書執筆中にAppleシリコン(M1 CPU)を搭載したMacが発売されました。素晴らしいCPUではありますが、原稿執筆時点ではAndroid Studioの動作環境には入っておらず、Intel HAXMの高速エミュレータも動作しません。Appleシリコンへの過渡期の間は、Intel CPU搭載のMacにしておくことをおすすめします。
この後様々なアップデートが実施され、結果としてAndroid StudioがARM対応したことから動作環境に組み込まれた。
しかし、M1 MacにおいてはAndroid Studioの開発環境構築に多少の手間がかかる。大きく分けると、JavaのバージョンアップとJDKの導入だ。
本記事では、M1 MacにおけるJava及びAndroid Studioの開発環境構築の流れを紹介する。
M1 MacのJDK問題
ただAnroid Studioをインストールし、コーディングなどを行っていると一見気づかないがREPLを実行すると下のようなエラーが表示されて実行に失敗する。
`CommandLineWrapper` is ill-suited for launching apps on Java 9+.
If the run configuration uses "classpath file", please change it to "@argfile".
Otherwise, please contact support.
「そもそもM1 MacにJavaのJDKはインストールされているのか?」と感じ、ターミナルにて確認すると、今度は次のような応答があった。
The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.
ちなみに…
Macでターミナルを起動し、「Java -version」と入力する
そこで、AzulとMicrosoftが協力して開発したZuluというOpen JDKがM1 Macで利用できるので、さっそくダウンロードを行う。
これでダウンロードをすすめ、Javaのインストール状況を確認すると下記のような表示に変わった。
openjdk version “16.0.1” 2021-04-20
OpenJDK Runtime Environment Zulu16.30+19-CA (build 16.0.1+9)
OpenJDK 64-Bit Server VM Zulu16.30+19-CA (build 16.0.1+9, mixed mode)
これでJDKとしてOpen JDK認識されていることが分かる。
「org.codehaus.groovy.control.MultipleCompilationErrorsException」エラーの対処法
しかし、これだけだと下記のようなエラーに遭遇することがある。
org.codehaus.groovy.control.MultipleCompilationErrorsException
これの原因はAndroid Studio側がZuluをJDKとして認識できていないのではないか、というのが個人的見解だ。
そこで、Android Studioに直接JDKを指定させたいが、JDKを指定する場合、Library/Java
フォルダー内のContents/Home
フォルダーを指定させる必要がありそう。
Zulu16をインストールしただけではLibraryフォルダー上にJavaフォルダーが作られない
タイトルの通りZulu16をインストールしただけでは、Libraryフォルダー上にJavaフォルダーが作成されない。
そのため僕の場合はZulu15をイントールした。Zulu15をインストールすることでLivraryフォルダー上にJavaフォルダーが作成されるので、Zulu15をインストールして下記画像の通り「Project Structure」から指定しよう。
そして、この様にJDKのパスを指定する。
まとめ
ということで本記事のまとめだが、M1 MacにてAndroid Studioを実行する場合には本記事執筆時点(2021/07/31)ではZulu15を利用しよう。
※当サイト(tamocolony)では極力最新の情報を掲載するよう努めていますが、掲載内容は最新のものと異なる、もしくは情報自体が誤っている可能性があります。当サイトにて記載している情報について、有用性や正確性、安全性についていかなる保証もするものではありません。
修正の必要や記事に関する質問がある場合は、当サイト問い合わせページよりお知らせいただけると幸いです。