背景
- Android プログラミングに慣れるために、Android Studio で最初のプロジェクトを開始しました。
- 私はこれをフォローしていますチュートリアル、 その中で
- 変更せずに新しいプロジェクトEmpty Activityを作成しました
- 「Hello World」メッセージを表示するシンプルなアプリをシミュレートすることになっています
問題の説明しかし、実行してビルドしようとするたびに (現時点ではエミュレーターを実行したいのですが)、次のエラー メッセージが表示されます。
Unable to make field private final java.lang.String java.io.File.path accessible:
Unable to make field private final java.lang.String java.io.File.path
accessible: module java.base does not "opens java.io" to unnamed module @42760a00
私の設定は次のとおりです:
- Android Gradle プラグイン バージョン: 4.2.1
- Gradleバージョン: 7.0.1 (Gradleの同期中に発生した別の問題(「Gradleの同期に失敗しました: サポートされていないクラスファイルのメジャーバージョン60」)を修正するために変更され、これに基づいて議論されました。フォーラム以下引用)
Andrey Dernov は 2021 年 4 月 14 日 00:18 にコメントしました。プロジェクトのインポートとビルドには、Gradle 7.0 または JDK バージョン 16 未満を使用してください (設定 (macOS では環境設定) | ビルド、実行、デプロイメント | ビルド ツール | Gradle | Gradle JVM オプション)。
- 16.0.1 より前のバージョン
何か提案やアイデアはありますか?
ベストアンサー1
解決策はGitHub私の場合はうまくいきました。Java JDK をダウングレードする必要はありませんでした。gradle-wrapper プロパティの gradle バージョンを 7.1.1 (6.x は Java 16 をサポートしていません) に変更し、gradle.properties に次の行を追加するだけです。
org.gradle.jvmargs=-Xmx1536M \
--add-exports=java.base/sun.nio.ch=ALL-UNNAMED \
--add-opens=java.base/java.lang=ALL-UNNAMED \
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED \
--add-opens=java.base/java.io=ALL-UNNAMED \
--add-exports=jdk.unsupported/sun.misc=ALL-UNNAMED