新しいAndroidアプリを作成するにあたって、さすがにもうJavaじゃないのかなと思いまして。見ないふりをしてやり過ごしてきましたが、いい加減Kotlinに手を付けないとなぁ、というわけで。
めんどくさいなぁ、もう。
でも、新規のiOSアプリならもうObjective-Cでは作りませんしね。年貢の納め時でしょうか。とりあえず本を買って一通り読めば何とかなるでしょう。
気を取り直して、Kotlinを始めるよ。#めんどくさいなぁ pic.twitter.com/udOICuV3Mx— hidez/ひでぢ (@_hidez) January 6, 2020
この本はAndroid用というわけではなく、IntelliJ IDEAを使用する前提で書かれていますが、適宜Android Studioに読み替えればいけばいいはずです。
でもなぁ。。。
ちょっとやりにくいんですよね。そこでIntelliJ IDEAをインストールしようかとも思ったのですが、IntelliJ IDEAとAndroid Studioは基本的に同じですよね? 両方インストールして、なにかが競合するとかしないでしょうか(ま、大丈夫なんでしょうけど)。
そもそも、本に載ってるちょっとしたコードを実行するためだけにIntelliJ IDEAを使うのはオーバースペックです。なにかSwiftのplaygroundみたいな方法があればいいのに。
そうだ、VSCodeがあるじゃないか。
♪♪♪
とにもかくにも、まずはJDKが必要です。Java8なら大丈夫らしいです。でも最後にアップデートしてからしばらくたってます。
% javac -version
javac 1.8.0_161
%
ちょっと古いですね。ここを見ると231が最新のようです(2020.1.7現在)。もちろん最新バージョンでなければいけないわけではないですが、モチベーションを上げるためにもここは早速ダウンロードして、、、と思ったら。
なんだよOracleプロファイルって。
Oracleのヤツめ。 |
じゃあOpen JDKかー、とjdk.java.netを見るとJDK13があります。
13でいいのか? 8で十分なんですけど。 |
macOS用をダウンロード |
早速ダウンロードして、解凍します。
% cd temp
% ls -la
total 394640
drwxr-xr-x 4 hoge staff 128 1 8 23:46 .
drwxr-xr-x+ 95 hoge staff 3040 1 8 23:46 ..
-rw-r--r--@ 1 hoge staff 6148 1 8 21:34 .DS_Store
-rw-r--r--@ 1 hoge staff 189967039 1 8 23:41 openjdk-13.0.1_osx-x64_bin.tar.gz
% tar xvzf openjdk-13.0.1_osx-x64_bin.tar.gz
x ./
x ./jdk-13.0.1.jdk/
x ./jdk-13.0.1.jdk/Contents/
x ./jdk-13.0.1.jdk/Contents/Home/
--省略--
x ./jdk-13.0.1.jdk/Contents/Home/bin/jstatd
x ./jdk-13.0.1.jdk/Contents/Home/bin/jdeps
x ./jdk-13.0.1.jdk/Contents/Home/bin/jconsole
x ./jdk-13.0.1.jdk/Contents/Home/bin/jimage
% ls -la
total 394640
drwxr-xr-x@ 5 hoge staff 160 1 8 23:47 .
drwxr-xr-x+ 95 hoge staff 3040 1 8 23:46 ..
-rw-r--r--@ 1 hoge staff 6148 1 8 21:34 .DS_Store
drwxr-xr-x@ 3 hoge staff 96 10 6 21:05 jdk-13.0.1.jdk
-rw-r--r--@ 1 hoge staff 189967039 1 8 23:41 openjdk-13.0.1_osx-x64_bin.tar.gz
%
解凍したJDKをJavaVirtualMachinesのディレクトリに移動します。
% sudo mv jdk-13.0.1.jdk /Library/Java/JavaVirtualMachines/
Password:
% /usr/libexec/java_home -V
Matching Java Virtual Machines (8):
13.0.1, x86_64: "OpenJDK 13.0.1" /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
1.8.0_161, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
1.8.0_141, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_141.jdk/Contents/Home
1.8.0_121, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
1.8.0_111, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home
1.8.0_91, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home
1.8.0_77, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk/Contents/Home
1.8.0_72, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_72.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
%
あとは.zshrcを編集して、JDKにpathを通します。
#Open JDK
export JAVA_HOME=`/usr/libexec/java_home -v 13.0.1`
ターミナルを開き直して、Javaのバージョンを確認します。でも、いつものアレが出現します。
まあ、そうだよね。 |
[システム環境設定] > [セキュリティとプライバシー] > [一般]の下部に、JDKがブロックされた旨が表示されているので、[このまま許可]を押して許可します。
ちょっとドキドキするよね。 |
改めてバージョンをチェックします。
% javac -version
javac 13.0.1
% java -version
openjdk version "13.0.1" 2019-10-15
OpenJDK Runtime Environment (build 13.0.1+9)
OpenJDK 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing)
%
大丈夫そうなので、最後に古いJDKを削除します。
% /usr/libexec/java_home -V
Matching Java Virtual Machines (8):
13.0.1, x86_64: "OpenJDK 13.0.1" /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
1.8.0_161, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
1.8.0_141, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_141.jdk/Contents/Home
1.8.0_121, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
1.8.0_111, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home
1.8.0_91, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home
1.8.0_77, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk/Contents/Home
1.8.0_72, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_72.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
% sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk
% sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_141.jdk
% sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk
% sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk
% sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk
% sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk
% sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0_72.jdk
% /usr/libexec/java_home -V
Matching Java Virtual Machines (1):
13.0.1, x86_64: "OpenJDK 13.0.1" /Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
%
これでOpen JDKの用意はできました。 全然Kotlinの話ではなくなってしまいましたが、ちょっと長くなったので、次回に続きます。
こちらもどうぞ。
Kotlinはじめました(後編)
Kotlinはじめました(書籍「Kotlinプログラミング」を読む)
Kotlinはじめました(AdMobバナー広告を組み込む)
Kotlinはじめました(AdMobアダプティブバナー広告を組み込む)