我正在尝试构建一个 RecyclerView sample使用 IntelliJ IDEA,但它给了我这个错误:
Could not initialize class com.android.sdklib.repository.AndroidSdkHandler
有两个类似的问题( 1 、 2 ),两个问题都建议将 JAVA_HOME 设置为 Java 8。就我而言,这没有帮助。
JAVA_HOME 设置为 C:..\jdk1.8.0_181\
C:..\javapath\中的符号链接(symbolic link)指向相应的 *.exe 文件。
SDK设置为1.8
UPD
在模块 build.gradle 中将 minSDKVersion 更新为 17,将 Java 版本更新为 8。
项目设置中有多个 JDK 和 Android API 平台。未使用的已删除。
现在构建成功了,但是crashes在开始时。
堆栈跟踪:
07-28 06:16:11.994 7337-7337/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.android.recyclerview, PID: 7337
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.android.recyclerview/com.example.android.recyclerview.MainActivity}: java.lang.ClassCastException: android.support.v7.widget.TintContextWrapper cannot be cast to android.app.Activity
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
at android.app.ActivityThread.access$800(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassCastException: android.support.v7.widget.TintContextWrapper cannot be cast to android.app.Activity
at com.example.android.common.logger.LogView.println(LogView.java:95)
at com.example.android.common.logger.MessageOnlyLogFilter.println(MessageOnlyLogFilter.java:42)
at com.example.android.common.logger.LogWrapper.println(LogWrapper.java:72)
at com.example.android.common.logger.Log.println(Log.java:66)
at com.example.android.common.logger.Log.i(Log.java:136)
at com.example.android.common.logger.Log.i(Log.java:146)
at com.example.android.recyclerview.MainActivity.initializeLogging(MainActivity.java:108)
at com.example.android.common.activities.SampleActivityBase.onStart(SampleActivityBase.java:40)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171)
at android.app.Activity.performStart(Activity.java:5241)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2168)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
at android.app.ActivityThread.access$800(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
UPD 2
按照描述修复了这个问题 here 。就像魅力一样。
最佳答案
如果您能够成功构建项目,请转到该项目,删除名为 .idea 的目录,删除文件 .iml。通过转到"file">“新建”>“来自现有源的项目”,在 Idea 中重新导入项目。希望能帮助您解决问题。
关于java - Android Studio Gradle 未构建示例应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57234208/