在 M1 苹果芯片上使用 Android Arctic Fox | 2020.3.1 arm64 时出现了 InvocationTargetException。

3
在我的M1苹果芯片上通过使用(如Room)进行Android项目构建。
Android Studio Arctic Fox | 2020.3.1 Beta 1 arm64
..
Android Studio Arctic Fox | 2020.3.1 Beta 5 arm64
Android Studio Bumblebee | 2021.1.1 Canary 2 aarch64

随着

Android Studio Arctic Fox | 2020.3.1 Beta 5
Build #AI-203.7717.56.2031.7360992, built on May 14, 2021
Runtime version: 11.0.10+0-b96-7249189 aarch64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 11.4

我遇到了

Execution failed for task ':FFTSpectrumLib:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction
   > java.lang.reflect.InvocationTargetException (no error message)

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

我不知道如何让它在快速的aarch64上运行!

x86上可以工作。

Android Studio Arctic Fox | 2020.3.1 Beta 1 x86

你是否正在使用 Room 数据库? - Karunesh Palekar
是的,我在使用Room和Dagger时遇到了这个问题。我问自己为什么要使用这种容易出错并且耗费生命周期的Dagger。 - hannes ach
是的,转换到 Hilt 吧。它更好用。我遇到过这个问题很多次,大部分情况下问题出在 Room Dao 或实体或注释的使用方式上。另外,顺便问一下,AS 在 M1 上运行良好吗?我打算买一个,但缺乏支持让我望而却步。 - Karunesh Palekar
Hilt对我来说是新的。它比Koin“更好”吗?无论如何,M1几乎完美地工作,您可以在此处阅读https://dev59.com/d1EG5IYBdhLWcg3wgv82#65176867 - hannes ach
1
Hilt是由Android团队在Dagger基础上构建的,非常棒。它也很容易进行测试。此外,如果您使用ViewModel,则有一种专用的方式来注入依赖项,因此您不必执行解决方法。应该尝试一下。感谢提供M1参考。 - Karunesh Palekar
我的成功来得太早了,我改变了我的答案。 - hannes ach
1个回答

14

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接