📺

android/tv-samplesを動かしてみる

2023/10/18に公開

https://github.com/android/tv-samples

近々Android TVのコードを保守していくことになりそうなので、まずはサンプルを動かしてみることに。

まずはgradle syncでこんなエラーが発生

Unable to make protected void java.net.URLClassLoader.addURL(java.net.URL) accessible: module java.base does not "opens java.net" to unnamed module @467aecef

エラーの内容をググってみると↓あたりの記事が関係ありそう

https://www.infoq.com/jp/news/2021/07/internals-encapsulated-jdk17/

確かに、最近Android Studioをアップグレードしたので、jdk17が使えるようには、なっている

さらにググってみるとほとんど同じissueが上がっている。

https://youtrack.jetbrains.com/issue/IDEA-313053/Unable-to-make-protected-void-java.net.URLClassLoader.addURLjava.net.URL-accessible-module-java.base-does-not-opens-java.net-to

jvmのオプションを設定せよということなので、GitHub Copilotの力も借りつつgradle.propertiesに下記を設定

org.gradle.jvmargs=--add-opens=java.base/java.net/=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED

これだけで、syncが成功し、エミュレータで実行できるところまでは確認できた。

Discussion