macOS (Intel) + Homebrew の JDK の現状を確認する

正しいのかどうかは分からんけども。

現状の記録として。

その都度、適切なものに更新する。


❯ brew list | grep jdk
openjdk
openjdk@11

❯ ls -l /usr/local/Cellar/ | grep jdk
drwxr-xr-x  3 mao  admin  96 Nov 11 03:40 openjdk
drwxr-xr-x  3 mao  admin  96 Jan 24 06:43 openjdk@11

❯ ls -al /usr/local/opt/ | grep jdk
lrwxr-xr-x    1 mao  admin    24 Nov 11 03:40 java -> ../Cellar/openjdk/19.0.1
lrwxr-xr-x    1 mao  admin    28 Jan 24 06:43 java11 -> ../Cellar/openjdk@11/11.0.18
lrwxr-xr-x    1 mao  admin    24 Nov 11 03:40 openjdk -> ../Cellar/openjdk/19.0.1
lrwxr-xr-x    1 mao  admin    28 Jan 24 06:43 openjdk@11 -> ../Cellar/openjdk@11/11.0.18
lrwxr-xr-x    1 mao  admin    24 Nov 11 03:40 openjdk@19 -> ../Cellar/openjdk/19.0.1
ls -al /usr/local/Cellar/

❯ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    19.0.1 (x86_64) "Homebrew" - "OpenJDK 19.0.1" /usr/local/Cellar/openjdk/19.0.1/libexec/openjdk.jdk/Contents/Home
    11.0.18 (x86_64) "Homebrew" - "OpenJDK 11.0.18" /usr/local/Cellar/openjdk@11/11.0.18/libexec/openjdk.jdk/Contents/Home
/usr/local/Cellar/openjdk/19.0.1/libexec/openjdk.jdk/Contents/Home

❯ ls -al /Library/Java/JavaVirtualMachines/
total 0
drwxr-xr-x  4 root  wheel  128 Jan 26 14:16 .
drwxr-xr-x  4 root  wheel  128 Dec  2 20:37 ..
lrwxr-xr-x  1 root  wheel   45 Jan 26 14:16 openjdk-11.jdk -> /usr/local/opt/openjdk@11/libexec/openjdk.jdk
lrwxr-xr-x  1 root  wheel   42 Jan 25 19:22 openjdk.jdk -> /usr/local/opt/openjdk/libexec/openjdk.jdk

❯ cat .zshrc | grep JAVA_HOME
JAVA_HOME=$(/usr/libexec/java_home -v11)
export PATH="$JAVA_HOME/bin:$PATH"

❯ echo $JAVA_HOME
/usr/local/Cellar/openjdk@11/11.0.18/libexec/openjdk.jdk/Contents/Home

❯ java --version
openjdk 11.0.18 2023-01-17
OpenJDK Runtime Environment Homebrew (build 11.0.18+0)
OpenJDK 64-Bit Server VM Homebrew (build 11.0.18+0, mixed mode)

❯ javac --version
javac 11.0.18

疑問としては、JAVA_HOME。


❯ brew info openjdk@11

If you need to have openjdk@11 first in your PATH, run:
  echo 'export PATH="/usr/local/opt/openjdk@11/bin:$PATH"' >> ~/.zshrc

と表示されるので、


JAVA_HOME=/usr/local/opt/openjdk@11

のほうが何か知らんけど都合がいいのではないか、

それともどっちでもいいのか、

ということ。

👉 Mac に Homebrew で OpenJDK11 を インストール する hatena-bookmark


Android Studio Electric Eel おすすめの Gradle Plugin と Gradle のバージョン

2023-01-20 現在。

 

■ Android Studio


Electric Eel | 2022.1.1
AI-221.6008.13.2211.9477386

 

■ Android Gradle Plugin


7.4.0


com.android.tools.build.gradle:7.4.0
↓
com.android.application:7.4.0
com.android.library:7.4.0

👉 【Plugin DSL】「com.android.tools.build:gradle」の記述は不要? hatena-bookmark

 

■ Gradle


7.6

 

■ 参考

👉 Android Studio Dolphin おすすめの Gradle Plugin と Gradle のバージョン hatena-bookmark



【AndroidStudio】Wi-Fiワイヤレスデバッグ ペアリング済み端末の再接続

パソコンから接続していたAndroid端末に、気がつくと切断されている時がある。


パソコンや端末の電源を一度落としたり、OS の再起動や AndroidStudio の再起動は時間がかかるのでしたくない。

なるべくかんたんに素早く再接続する方法。


1. Connection Assistant「Restart ADB server」

2. ターミナルから「adb kill-server」

3. ワイヤレスデバック OFF → ON

4. 再ペアリング

上のどれかで再接続できるので操作が少ない 1. から順にやっていくと良い。

それぞれ操作後は、3〜10秒程度待つと再接続される。

Event log を見ながらやると分かりやすい。

 

📶 1. Connection Assistant「Restart ADB server」

AndroidStudio 上部から、Troubleshoot device connections を選択して、

NextNext で2画面を飛ばして以下画面から Restart ADB server

数秒待つと、端末と再接続されます。

 

📶 2. ターミナルから「adb kill-server」

ターミナルを開いて adb kill-server と打つだけ。

数秒後、再接続されます。

ADB server は kill されると、自動で起動し、ペアリング済み端末に接続にいくようです。

1. の機能もこのことを利用しているように思えます。



 

📶 3. ワイヤレスデバック OFF → ON

私、ずっとこの方法でやってました。

いちいち端末を手にとって、通知バーに入れたタイルから、一度 OFF して ON にする。

 

📶 4. 再ペアリング

上記の3つの方法で接続できない場合は、もう再ペアリングしちゃいます。

AndroidStudio 上部 Pair Devices using Wi-Fi からどうぞ。

 

📶 注意点

端末側がロック画面やスリープ状態だと再接続できないようです。

👉 Jake Wharton さん「Android12、ロック画面 / 常時表示の時計が良い。」 hatena-bookmark

あと、AndroidStudio の設定として、ADB 周りがデフォルト設定になっていることが必要です。

mDNS という仕組みを使って接続してるようです。

👉 【謎?】QRコードによるデバイスのペア設定 - Android11 hatena-bookmark

 

📶 まとめ

一度、ペアリング済みのWiFiワイヤレスデバッグの再接続は、Android Studio 画面上部から、


No Devices 

 ↓

Troubleshoot device connections

 ↓

Next

 ↓

Next

 ↓

Restart ADB server

とするだけでよい。上記 1. の方法です。